Jump to content
IGNORED

TI-Forth-Based Universal Disassembler v2.3 by René LeBlanc


Lee Stewart

Recommended Posts

In the 4K Basic Support Module thread, @Schmitzi found three disk images with Disassemblers on them. As I pointed out in this post, the second disk contains an XB LOAD program that can load a GPL Assembler or a GPL Disassembler. Those two programs appear to be written in TMS9900 Assembly Language Code (ALC) rather than Forth, as was hoped. What interested me, and the topic of this thread, were disks one and three. They happen to be two different versions of René Leblanc’s Universal Disassembler, which he wrote in TI Forth. As near as I can tell, Universal Disassembler is for ALC rather than GPL. The first disk is v1.2 on a 90 KiB disk and the third is v2.3 on a 360 KiB disk.

 

Unfortunately, neither of these disks work. As I discussed in the above-referenced thread and will repeat here, it appears that these disks were prepared from the originals by copying the three files, FORTHSAVE, SYS-SCRNS, UNIVERSAL (aka FORTH) (in that order), from the system disks with no further processing, which is verboten for TI Forth system disks because the system screens (blocks) will never be copied properly. They will all be there, just not in their proper places and almost certainly misregistered, i.e., each block’s line 0 will not start on a 4-sector boundary. The only way to properly duplicate a TI Forth system disk is to copy the disk, sector by sector. Creating a larger system disk is more complicated, but doable.

 

I have every reason to believe I can restore these two disks to working order, unless there is more than misregistration wrong with them. My intention is to produce 90 KiB (SSSD), 360 KiB (DSDD) and 400 KiB (CF7+/nanoPEB) versions of each disk.

 

Right now, I need to mow a lawn—TTFN!

 

...lee

  • Like 7
  • Thanks 2
Link to comment
Share on other sites

2 hours ago, ti99iuc said:

I have compressed this entire folder in my hard disk, i do not know if it could help :)
just attach it here is free ;)

TI-FORTH Universal Disassembler.zip 126.85 kB · 5 downloads

 

That is a very nice stash, Ciro!

 

Below is a table of the disks in the ZIP file and whether they are good:

Disk                         Size(KiB)  Good
--------------------------------------------
TI Forth                      90        YES
JJ Volk Comp1                 90        YES(?)
JJ Volk Comp2                 90        NO(?)
Universal Disassembler v1.2   90        YES
Universal Disassembler v2.3  360        NO
TI Forth                     360        NO

Neither of the 360 KiB (DSDD) disks work. Both have been copied in the wrong way as explained in post #1 above.

 

The John Volk disks are problematic. The Compilation 1 seems to work in that all of the blocks appear to be in the correct places, but some of the programs do not seem to work correctly. The Compilation 2 disk has a bad BSAVEd system, but some of the programs I checked seem to work. The disk, however, does not work as John Volk set it up. It will be tedious to fix.

 

The v1.2 Universal Disassembler (UD) disk seems to work just fine, so we should not need to mess with that one. @Schmitzi, you should replace the one you have with this one.

 

That leaves UD v2.3 to fix as per this thread. If any of the program image blocks are bad, we will not be able to fix them without the source code. Maybe we can see whether Mr. LeBlanc still has the source code. Even if we can get UD v2.3 to work, it would be fun to convert it to fbForth 2.0.

 

...lee

  • Like 1
  • Thanks 1
Link to comment
Share on other sites

6 hours ago, Lee Stewart said:

 

That is a very nice stash, Ciro!

 

Below is a table of the disks in the ZIP file and whether they are good:


Disk                         Size(KiB)  Good
--------------------------------------------
TI Forth                      90        YES
JJ Volk Comp1                 90        YES(?)
JJ Volk Comp2                 90        NO(?)
Universal Disassembler v1.2   90        YES
Universal Disassembler v2.3  360        NO
TI Forth                     360        NO

Neither of the 360 KiB (DSDD) disks work. Both have been copied in the wrong way as explained in post #1 above.

 

The John Volk disks are problematic. The Compilation 1 seems to work in that all of the blocks appear to be in the correct places, but some of the programs do not seem to work correctly. The Compilation 2 disk has a bad BSAVEd system, but some of the programs I checked seem to work. The disk, however, does not work as John Volk set it up. It will be tedious to fix.

 

The v1.2 Universal Disassembler (UD) disk seems to work just fine, so we should not need to mess with that one. @Schmitzi, you should replace the one you have with this one.

 

That leaves UD v2.3 to fix as per this thread. If any of the program image blocks are bad, we will not be able to fix them without the source code. Maybe we can see whether Mr. LeBlanc still has the source code. Even if we can get UD v2.3 to work, it would be fun to convert it to fbForth 2.0.

 

...lee

 

Thanks ! You mean this one is the good one ?

 

grafik.thumb.png.8784c70f445effdeb2b7903fd2261700.png

 

 

And which is my bad one ? The first here ?

 

grafik.thumb.png.686245b08c357c7ffb60e1f88835d82a.png

 

grafik.png

Edited by Schmitzi
Link to comment
Share on other sites

2 hours ago, FarmerPotato said:

Here is my original copy of UNIVDISASM version 2.3 by René Leblanc. I don't remember how I got it, but the floppy disk is from the mid 80s. I read it with Kryoflux into a 180K DSK image.

 

I used UNIVDISASM two years ago to decompile the FORTI words.

univdisasm.dsk 180 kB · 5 downloads

 

Though this disk image works, it is a 90 KiB SSSD image in a 180 KiB file. How did that happen?

 

...lee

Link to comment
Share on other sites

3 hours ago, Lee Stewart said:

 

Though this disk image works, it is a 90 KiB SSSD image in a 180 KiB file. How did that happen?

 

...lee

Oops

 

I made a script to have Kryoflux read both sides of a DSSD floppy, then put them into one DSK image. So, the back 90K is just E5E5 that it read off the other side.

 

Link to comment
Share on other sites

4 minutes ago, FarmerPotato said:

Oops

 

I made a script to have Kryoflux read both sides of a DSSD floppy, then put them into one DSK image. So, the back 90K is just E5E5 that it read off the other side.

 

No problem. I can make it DSSD, but, like I said, the current image’s VIB says it is SSSD.

 

...lee

Link to comment
Share on other sites

OK—Here are the cleaned-up SSSD, DSDD and CF7+/nanoPEB versions of René LeBlanc’s Universal Disassembler v2.3:

 

UniversalDisassemblerV23_SSSD.dsk  UniversalDisassemblerV23_DSDD.dsk  UniversalDisassemblerV23_CF7.dsk

 

Remember that this program (“UNIVERSAL”) is an E/A3 file (TMS9900 object code) and that, to use the program, you must load it with the Editor/Assembler cartridge’s option 3 as “DSK1.UNIVERSAL”. This boots up TI Forth along with Forth code for the program, which starts as soon as it is loaded.

 

Please, let me know if there are any problems with them and if you would like the Universal Disassembler in another disk format.

 

...lee

  • Like 3
  • Thanks 1
Link to comment
Share on other sites

On 4/10/2020 at 12:26 PM, Lee Stewart said:

Please, let me know if there are any problems with them and if you would like the Universal Disassembler in another disk format.


So, this is the program I bought to crack the text 2 speech disk, so many years ago...:ponder:

All went as planned:grin:... So, I can't help but love it!:lust:

 

What I am not so pleased about:?... is that, when I try to print, rather than display, I get garbage or one character per line!:roll:

 

I've tried this on Clasic99 and Win994a using CLIP, PIO, and RS232:BA=1200 devices.

 

I even found Screen #51...:thumbsdown:

 

...Other programs seem to print properly, why not this:twisted:???

 

Most Frustrating!:x

Link to comment
Share on other sites

15 hours ago, HOME AUTOMATION said:

So, this is the program I bought to crack the text 2 speech disk, so many years ago...:ponder:   All went as planned:grin:... So, I can't help but love it!:lust:

 

What I am not so pleased about:?... is that, when I try to print, rather than display, I get garbage or one character per line!:roll:   I've tried this on Clasic99 and Win994a using CLIP, PIO, and RS232:BA=1200 devices.   I even found Screen #51...:thumbsdown:   ...Other programs seem to print properly, why not this:twisted:???   Most Frustrating!:x

 

Mercy me! Presuming the problem can be found in screen #51 or other source code (minimal) on the disk, I will see what I can figure out. If, however, the problem is in any of the BSAVEd code, we may be screwed—unless I can raise Mr. LeBlanc and get the source code from him. He is 85 (I think), but I am pretty sure I have found him at the same address as on screen #6. I intend to write him a letter in the very near future to see whether he can lay his hands on the source code and might be willing to share.

 

...lee

  • Like 3
Link to comment
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.
Note: Your post will require moderator approval before it will be visible.

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...