Jump to content
Count9929A

LBLA question

Recommended Posts

 

right, there is another point of overwriting. In the MAME debugger, breakpoint at 7226, I found the value 0278 at address 713E.

 

I got the copy of the LBLA from WHTech; I do not have a genuine copy. It would indeed be interesting to find out if there were a batch of broken LBLA. Hopefully there is someone with a real tape who can create a WAV from it.

 

Edit: Just saw your message. I tried to load it in MAME, but I'm getting a NO DATA FOUND after some time. I'll try to run some filters from Audacity over it.

 

@Count9929A: We may have downloaded the same copy. Still, it is very unlikely that this is a result of a corrupted tape recording. Data records on the tape are always backed up with an identical copy (thus it always sounds like Beeeee ... AA-BB-CC-DD- ...), and the changes affect a single value at different locations. Also, I find it high interesting that the difference is between 713E and 718E, which seems as if someone typed in those values from a bad printout, reading a 3 instead of an 8.

 

 

@mizapf: I read LBLA from an original tape. Your observations are interesting

  • Like 1

Share this post


Link to post
Share on other sites
Count9929A, it is really good that you are learning the Assembly !! :D


so we can do an "Assembler session for dummies" in next TI99iuc reunion :P

Share this post


Link to post
Share on other sites

Hi ti99iuc! I hope that the next reunion will be much sooner!

It will take ages before I really learn asm :-)

 

Back to the topic, I confirm that *both* sides of my original tape have an LBLA with addresses 713E.

I patched the addresses (in memory) to 718E and now the Old command works properly.

 

I will patch also the ohther bug, and then I will try to save on tape the patched version

 

@ti99iuc: do you have virgin tapes specific to save computer programs? I have only one.

Share this post


Link to post
Share on other sites

It is funny to find obvious bugs in decades-old software. This was a similar experience when I found out there was a bug in the format routine of the original TI floppy disk controller, which remained hidden until I saw it in MAME. They used a MOVB command instead of a MOV command at address 442C (see http://www.unige.ch/medecine/nouspikel/ti99/dc2.txt), so the pointer to the track layout was not set correctly. The low byte was not set to 0x09 but retained an old value 0x00, so the track image was shifted by 9 bytes. It there had been a very different value, this would have caused non-readable disks, but this way, the shift had no effect.

Edited by mizapf

Share this post


Link to post
Share on other sites

@ti99iuc: do you have virgin tapes specific to save computer programs? I have only one.

maybe i should have something... probably will be not Virgin at all... just a bit already used :P but you can use it again and again ;)

Share this post


Link to post
Share on other sites

@ti99iuc: as a first exercise to learn assembler, you could load your copy of LBLA in the minimemory and check if it has the bug discussed in the previous posts :-)

I believe you have an original tape

Share this post


Link to post
Share on other sites

Here's the LBLA WAV file, corrected for both the symbolic addressing bug and the OLD bug. Please let me know if it's readable as it's being recorded from a 36 year old tape and tape recorder :)

 

LBLA_Corrected.wav

  • Like 3

Share this post


Link to post
Share on other sites

Here's the LBLA WAV file, corrected for both the symbolic addressing bug and the OLD bug. Please let me know if it's readable as it's being recorded from a 36 year old tape and tape recorder :)

 

attachicon.gifLBLA_Corrected.wav

 

 

Let me ask a really stupid question: now that I am working on the ET-PEB I am using the mini memory cartridge for the very first time. I got the cartridge from kl99 recently (i.e. about a year ago). I so wish I had this cartridge back in the day - but I didn't. I think the LBLA will be a nice tool for me for validating the ET-PEB with simple programs, like repeating loops producing memory access patterns I can check with an oscilloscope or logic analyser. For this purpose I don't want to be loading LBLA from tape (i.e. phone or another computer as audio signal) all the time. It would actually be a good test case for DSR routines. So here is the stupid question:

  • I think I read from somewhere that the L command can be used to load LBLA (in Easybug?). Is it possible to load the LBLA from other device than tape?
  • And a second one: if I store the LBLA memory image (basically whole 4K block of RAM of mini memory after loading LBLA) into flash memory of the ET-PEB, and later inject it back in place just by copying it over, would that work or am I missing something?

Share this post


Link to post
Share on other sites

And a follow up comment - I haven't tried the LBLA WAV file you submitted yet, but I'll certainly try to test it and I'll keep you posted how that went :)

Share this post


Link to post
Share on other sites

 

 

 

Let me ask a really stupid question: now that I am working on the ET-PEB I am using the mini memory cartridge for the very first time. I got the cartridge from kl99 recently (i.e. about a year ago). I so wish I had this cartridge back in the day - but I didn't. I think the LBLA will be a nice tool for me for validating the ET-PEB with simple programs, like repeating loops producing memory access patterns I can check with an oscilloscope or logic analyser. For this purpose I don't want to be loading LBLA from tape (i.e. phone or another computer as audio signal) all the time. It would actually be a good test case for DSR routines. So here is the stupid question:

  • I think I read from somewhere that the L command can be used to load LBLA (in Easybug?). Is it possible to load the LBLA from other device than tape?
  • And a second one: if I store the LBLA memory image (basically whole 4K block of RAM of mini memory after loading LBLA) into flash memory of the ET-PEB, and later inject it back in place just by copying it over, would that work or am I missing something?

 

 

Classic99 includes the file MM_LBLA.obj in the DSK1 directory which is essentially an EA tagged object code (option #3) image of the entire 4K of RAM of the MM including the LBLA (corrected for the OLD bug but not the symbolic addressing one) which is loaded from disk. You should be able to use it as is to load LBLA from the ET-PEB using the Mini Memory option of the start menu. And yes, saving the entire MM RAM from >7000 to >7FFF is the way to go for later reloading.

  • Like 1

Share this post


Link to post
Share on other sites

What are your patches? Only the 713E occurrences?

 

I have some issues with reading the WAV file; I can try to create a clean WAV form MAME (without any jitter or noise).

Share this post


Link to post
Share on other sites

What are your patches? Only the 713E occurrences?

 

I have some issues with reading the WAV file; I can try to create a clean WAV form MAME (without any jitter or noise).

 

Yup, the 3 occurrences of >713E to >718E at addresses >71A6, >71AC and >7226. Also changing 06 to 07 at address >724F to fix the symbolic addressing bug as well.

As for the wav file, I'm not sure how my encoder program handles it (Cyberlink Wave Editor), but then again I am using a very old original TI cassette tape player so who know what kind of distortions are being introduced here even though the TI can actually read the tape from that player just fine...

Share this post


Link to post
Share on other sites

Resurrecting this old thread...

You might remember: we found out that the LBLA on some (all?) original tapes has a bug that prevents the OLD command form working. A patched version exists (for instance in Classic 99) but has not (yet) been found on an original tape.

Today, I was looking for the Miner 2049 manual on Ciro's database , when my eyes have been caught by the second document in this entry, which seems to me an official addendum by Texas Instruments. If that is the case (Ciro do you remember the origin of the scan?), then the bug was known by TI and the addendum describes the fix that mizapf reconstructed in this thread.

 

Ciro, you're database is a cave of tresures!! 🙂

 

  • Like 1

Share this post


Link to post
Share on other sites

@Count9929A 

I am very glad you find useful the database. I Always dedicate lot of time to complete it best I can and I am always happy when I can see it appreciated from other users. Thanks for your kind words.
about the document you linked I can say that both of the sheets was included in an European original Package of the MiniMemory. 

I think them are official addendums both but, anyway, only one of them has the TI code printed on it... so any doubt is legitimate 😛

Edited by ti99iuc
  • Thanks 1

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...

  • Recently Browsing   0 members

    No registered users viewing this page.

×
×
  • Create New...