ralphb #1 Posted March 29, 2017 Is there a binary (or even the source code) of the Line by Line Assembler available? I'm currently only aware of the WAV. Quote Share this post Link to post Share on other sites
mizapf #2 Posted March 29, 2017 If the WAV contains a PROGRAM file, we can copy it to a disk (with my good old "Adventure copy" :-) ). From there we can do a disassembly and find a person with a lot of spare time. Quote Share this post Link to post Share on other sites
ralphb #3 Posted March 29, 2017 Sounds kind of good ... Let's discuss on Saturday. But maybe someone already has a binary ....? Quote Share this post Link to post Share on other sites
ralphb #4 Posted March 29, 2017 Err, am I stupid, or couldn't you just load LBLA into MESS and dump the memory section? Except that there's no dump feature ... by default. Quote Share this post Link to post Share on other sites
mizapf #5 Posted March 29, 2017 I think this is it, but I am a bit surprised to find no mnemonic table in the code. So how does it work? I put the ROM and GROM contents on the disk as well. lbla.dsk 2 Quote Share this post Link to post Share on other sites
Tursi #6 Posted March 29, 2017 Be aware that the copy on that disk image has a 4-byte header on it - I've shipped a raw version of it and LINES with Classic99 for years. However, interestingly, the version on that disk is slightly different from the version I ship... all the differences are in the first >228 bytes of code. What I find most interesting is an ASCII string right at the beginning that on mine is "0031" and yours in "0038" (right before "DSK1"). It makes me wonder if that's a newer version - both have the same copyright year. Yours also includes "LINES" in the REF/DEF table but mine doesn't, but it's possible I manually removed that from mine since I ship LINES separately. It's been a very long time and I don't remember (but I can't see why I would have, since on investigation LINES and LBLA seem to both contain almost the same code...) Anyway, for curiousity's sake: classic99_lbla.zip 2 Quote Share this post Link to post Share on other sites
mizapf #7 Posted March 29, 2017 Hmm, I took the lbla.wav file that I found in my folder; I don't remember where I got it from. I do not believe it is an original file from a tape, as it sounds too clear; audacity shows a clean waveform, but not squares as I know from MAME; see below. Maybe it was already digitized by another emulator? Quote Share this post Link to post Share on other sites
ralphb #8 Posted March 29, 2017 Great, thanks to both of you! Quote Share this post Link to post Share on other sites
jedimatt42 #9 Posted March 29, 2017 There is also this thread: http://atariage.com/forums/topic/261802-new-cartridge-minimem-lbla-tibug-monitor-and-disassembler/?p=3687302 Where Stuart placed the LBLA into rom for us. [email protected] Quote Share this post Link to post Share on other sites
Stuart #10 Posted March 29, 2017 (edited) Two files attached which may be of help/interest. "MiniMem LBLA Listing.doc" is a disassembly of the MiniMem with the LBLA loaded. Most of the code is the LBLA, but there is also some LINES and other stuff in there. It's a 'raw' listing - some data is interpreted as instructions, and this sometimes makes later instructions be misinterpreted, and so on. The first column in the listing is the memory address, the second column is the data at that address, and the third column is the disassembled instructions. The first and second columns are correct even where the disassembled instructions are out of sync. "MiniMem LBLA & Utilities Cartridge.a99" is a text file for my LBLA + TIBUG + Disassembler cartridge. It contains commented LBLA source, but has a number of changes from the original plus a bit of code shuffling so it can run from cartridge. All labels in the code in the form "Axxxx" relate to memory addresses in the first doc. The first bit of the LBLA, starting at >2B18, is workspaces and data. The main entry points are >2BA6 for "NEW" (label LBLANEW in my code) and >2BAC for "OLD" (label LBLAOLD in my code). There's then some shuffled code at A2BB0, but my code re-syncs with the listing at A2C3A. I've got various handwritten notes on how it works as well. Give me a shout if confused. MiniMem LBLA Listing.doc MiniMem LBLA & Utilities Cartridge.a99 Edited March 29, 2017 by Stuart 2 Quote Share this post Link to post Share on other sites
+acadiel #11 Posted March 30, 2017 Someone remastered my WAV of the original dump of my cassette here: http://ftp.whtech.com/Cassettes/Mini_Memory/Lines_Asm_remastered.wav Quote Share this post Link to post Share on other sites
ralphb #12 Posted March 30, 2017 Two files attached which may be of help/interest. Thanks Stuart, but why does the code start at >2A00? Shouldn't the ROM start at >6000, and the RAM with LBLA and LINES at >7000, with an additional GROM? Quote Share this post Link to post Share on other sites
Stuart #13 Posted March 30, 2017 Thanks Stuart, but why does the code start at >2A00? Shouldn't the ROM start at >6000, and the RAM with LBLA and LINES at >7000, with an additional GROM? An excellent point! I done the disassembly quite a few years ago so memory is a bit vague. The disassembler I used runs under XB, so what I think I done was a partial dump of the MiniMem RAM, swapped to the XB cartridge and reloaded that dump at >2A00. So the addresses in the listing have an offset of >4600 from the actual RAM addresses in the MiniMem. So for example address >2B8E in the listing + offset >4600 = actual address >718E in the MiniMem. Quote Share this post Link to post Share on other sites
+RXB #14 Posted March 30, 2017 Why not use a GPL program to dump memory and do Disassembly? You could load it as the TI Basic memory >2000 - >4FFF or into any Cartridge space >6000 - >FFFF As GPL has easy access to making disk files it would be the most viable approach to dumps of other Carts? Quote Share this post Link to post Share on other sites