Jump to content
ti99iuc

112 TI Basic Games converted in .BIN for the FinalGrom99, MiSTer and emulators

Recommended Posts

http://www.ti99iuc.it/web/index.php?pageid=homepage&artid=195

 

B2BinLogo.thumb.jpg.a26c0b6eb4fc192c4175d360f954f49b.jpg

 

Starting from this thread, TMOP prepared a guide and published as article for the website of the TI99iuc.
follow the link and scroll the end of the page to find the link to download the .ZIP file containing all the games already converted or click here

Enjoy ;)
 

Edited by ti99iuc
  • Like 15
  • Thanks 1

Share this post


Link to post
Share on other sites

For anyone else using Linux.... the FG99 directory in the zip is empty and needs to be filled using the supplied conversion .bat file.

Linux users- first for ease of use change the batch file name to convert.
Now use a text editor to change every \ to a /
Then change copy to cp - I kept "whole word" and "case sensitive" but you don't need to here.
Save the amended file.
Depending upon your editor settings it probably has those dos CRs which are stripped by typing at command:
dos2unix convert
Now when you type bash convert the fg99 folder fills up nicely.

(make sure your shell window is in the right directory while doing the above).

Using FG99 the programs are placed into VDP ram and run from there (this maintains the RESTORE command) - don't forget that TI Basic games may take a while to initialise and you may have a black screen for a while....

I have several TI Basic games formerly sold by Stainless Software that would be good in bin format- take a look for example at
http://shawweb.myzen.co.uk/stephen/ti/stainless9.zip
- note some of these may be XB but it includes the famous ROLL5 from Pewterware - the best Basic Yahtzee.

There are more for download at my website (http://shawweb.myzen.co.uk/stephen/pc99dsk.htm )so there may be another hundred to convert if possible.... any disks in PC99 format are easily changed using 99TIDIR.

seasonal greetings s

  • Like 2
  • Thanks 1

Share this post


Link to post
Share on other sites
1 hour ago, blackbox said:

Linux users- first for ease of use change the batch file name to convert.
Now use a text editor to change every \ to a /

Then change copy to cp

 

sed "s/\\\/\//g" Create_FinalGROM_Files.bat | sed "s/copy/cp/" > conv; chmod 755 conv
Edited by mizapf
  • Like 4

Share this post


Link to post
Share on other sites

Thank you! This is a wonderful Xmas present. Also, thank you for including one of my first BASIC games from 1980 -- Helocopter Rescue. Delighted!

  • Like 2

Share this post


Link to post
Share on other sites
21 hours ago, blackbox said:

For anyone else using Linux.... the FG99 directory in the zip is empty and needs to be filled using the supplied conversion .bat file.

Linux users- first for ease of use change the batch file name to convert.
Now use a text editor to change every \ to a /
Then change copy to cp - I kept "whole word" and "case sensitive" but you don't need to here.
Save the amended file.
Depending upon your editor settings it probably has those dos CRs which are stripped by typing at command:
dos2unix convert
Now when you type bash convert the fg99 folder fills up nicely.

(make sure your shell window is in the right directory while doing the above).

Using FG99 the programs are placed into VDP ram and run from there (this maintains the RESTORE command) - don't forget that TI Basic games may take a while to initialise and you may have a black screen for a while....

I have several TI Basic games formerly sold by Stainless Software that would be good in bin format- take a look for example at
http://shawweb.myzen.co.uk/stephen/ti/stainless9.zip
- note some of these may be XB but it includes the famous ROLL5 from Pewterware - the best Basic Yahtzee.

There are more for download at my website (http://shawweb.myzen.co.uk/stephen/pc99dsk.htm )so there may be another hundred to convert if possible.... any disks in PC99 format are easily changed using 99TIDIR.

seasonal greetings s

 

I've created the shell script for the conversion under Unix. It's in attachment. I've tested it on MAC OSX, but should work fine also on Linux. Set the appropriate permissions on file if needed. The .zip package on the IUC site will be updated soon. 

 

I've checked the site and some of the games look interesting for a cart conversion, however I do not plan to do any additional conversion, since 100+ were enough for me at the moment! 🙂

I hope in the support of some volunteers on this forum... ;-)

 

Create_FinalGROM_Files.zip

  • Like 1
  • Thanks 2

Share this post


Link to post
Share on other sites

Dumb question... why are the MISTER files named with a "_C.bin" extension? That breaks about 20 years of naming convention that says C is an 8k non-banked ROM. (The original V9T9 emulator used C and D for the two banks).

 

Also my usual offense that Classic99 is a named typ... oh whatever. ;)

 

  • Thanks 1

Share this post


Link to post
Share on other sites
13 hours ago, Tursi said:

Dumb question... why are the MISTER files named with a "_C.bin" extension? That breaks about 20 years of naming convention that says C is an 8k non-banked ROM. (The original V9T9 emulator used C and D for the two banks).

 

Also my usual offense that Classic99 is a named typ... oh whatever. ;)

 

Hi Tursi,

here is a link with the technical details on the image file format used on MiSTer TI99 core:

https://github.com/MiSTer-devel/TI-99_4A_MiSTer/blob/master/fpga/create-misterrom.cmd#L30

 

and here is the Python script used to generate the single memory image files (aka "full rom"):

https://github.com/GHPS/pyTIrom

 

To summarize, to have the MiSTer TI99 core working, you need first to create a "tiroms.bin" file with the console ROM+GROM. This file can be loaded automatically by the core if renamed in "boot.rom" and placed into the "TI-99_4a" directory of the microSD. Alternatively, you can start the TI99 core, press the F12 button to activate the OSD menu and load the "tiroms.bin" file using the "Load Full or C.bin *.BIN" option (see image in attachment). In this way you will have the base console (16K VDP + TI BASIC).

 

To run a SSS module you can use the same OSD menu and load the varios C, D and G files (the same that you use in Classic99). You need to select the various files, using the specific menu option. This is fast in case of a SSS with a single file (eg. Wumpus), but in case of a SSS module with C, D and G files (eg. Extended Basic) is convenient to create a single file image with the Python script. This single file image can be loaded using the "Load Full or C.bin *.BIN" option.

 

Please, note that the MiSTer core simply ignores C, D and G suffix when using the OSD menu (the suffix instead is needed by the Python script to correctly generate the single file image). So, in the converted files from TI BASIC, I've used the "_C.bin" suffix to easily indicate that they have to be loaded using the "Load Full or C.bin *.BIN" option in MiSTer. Anyway, I understand the point that this could generate confusion if the file is used in another emulator, so I'll have to rethink the convention I've used for TI99 MiSTer files to match both needs. The "_8.bin" suffix is not so immediate if you are not familiar with TI99 and want to load such file on MiSTer.

 

scr1.jpg

Share this post


Link to post
Share on other sites

The .zip file on the ti99iuc site was updated with the Unix shell script and the suffixes for MiSTer files have now the "8.bin" (the "Full" suffix will be reserved for the memory images with the TI99 system ROM/GROM).

  • Like 1
  • Thanks 1

Share this post


Link to post
Share on other sites

Right over my head and the page keep jumping back to Italian... Tried some times, gave up on trying to make it work.

Youtube on how to get it to work?

Why make it so "difficult" to get to the games? To get more memory for the TI?

  • Confused 1

Share this post


Link to post
Share on other sites
3 hours ago, oddemann said:

Right over my head and the page keep jumping back to Italian... Tried some times, gave up on trying to make it work.

Youtube on how to get it to work?

Why make it so "difficult" to get to the games? To get more memory for the TI?

 

Sorry, but it's not clear the problem you experienced with the conversion or the site.

 

Let's review quickly the steps to convert a TI BASIC to a SSS using an example. You need Classic99 installed.

 

1) Download the Robopods game from the site (it's at the end of the page), place in the DSK1 directory in the Classic99 installation.
2) Run Classic99, select TI BASIC. Type CALL FILE(1). Load the game with OLD DSK1.ROBOPODS
3) Press CTRL+HOME to open the Debugger (or from menu: Edit -> Debugger). In the Debugger window, set a Breakpoint. Click on the Breakpoint field and type U7=04 then press the Add button. This breakpoint intercepts the change of the background color (from the initial value of 07 of TI BASIC).
4) In the TI BASIC launch the game with the usual RUN
5) Wait until the breakpoint is reached (you'll stop to see the changing values for registers, program counter, etc.), then from the Debugger window, menu Make, select the "Save Memory As Program". It wil open a new window to allow you to save the memory. Choose TI BASIC Restore from the list, then type the name of the SSS module (in this case ROBOPODS), then press build and choose the name of the file.
6) You'll get a file with the "9.bin" suffix that you can run directly in Classic99.
7) To run the file on your TI with the FinalGROM you need to invert (a "8.bin" file) using one of the usual utilities/scripts. At the end of the page in the article there is the Java utility from Rasmus.

 

Let me know if this solves your dubts/problems.

 

  • Like 1

Share this post


Link to post
Share on other sites
20 minutes ago, tmop69 said:

 

Sorry, but it's not clear the problem you experienced with the conversion or the site.

 

Let's review quickly the steps to convert a TI BASIC to a SSS using an example. You need Classic99 installed.

 

1) Download the Robopods game from the site (it's at the end of the page), place in the DSK1 directory in the Classic99 installation.
2) Run Classic99, select TI BASIC. Type CALL FILE(1). Load the game with OLD DSK1.ROBOPODS
3) Press CTRL+HOME to open the Debugger (or from menu: Edit -> Debugger). In the Debugger window, set a Breakpoint. Click on the Breakpoint field and type U7=04 then press the Add button. This breakpoint intercepts the change of the background color (from the initial value of 07 of TI BASIC).
4) In the TI BASIC launch the game with the usual RUN
5) Wait until the breakpoint is reached (you'll stop to see the changing values for registers, program counter, etc.), then from the Debugger window, menu Make, select the "Save Memory As Program". It wil open a new window to allow you to save the memory. Choose TI BASIC Restore from the list, then type the name of the SSS module (in this case ROBOPODS), then press build and choose the name of the file.
6) You'll get a file with the "9.bin" suffix that you can run directly in Classic99.
7) To run the file on your TI with the FinalGROM you need to invert (a "8.bin" file) using one of the usual utilities/scripts. At the end of the page in the article there is the Java utility from Rasmus.

 

Let me know if this solves your dubts/problems.

 

I think oddemann may be referring to the zip file in the first post, which is no longer downloadable. I get "404 Not Found".

Edited by firebottle
  • Like 1

Share this post


Link to post
Share on other sites
11 minutes ago, firebottle said:

I think oddemann may be referring to the zip file in the first post, which is no longer downloadable. I get "404 Not Found".

I think it's due to the fact that there is a new file version of the zip on the site and that post has the initial link. Anyway, just go to http://www.ti99iuc.it/web/index.php?pageid=homepage&artid=195#.XhConG5FyUk and scroll down at the end of the article, you'll find the updated files. I guess it's not possible to update the initial post to point to the new version.

  • Like 1

Share this post


Link to post
Share on other sites
8 hours ago, tmop69 said:

 

Sorry, but it's not clear the problem you experienced with the conversion or the site.

 

Let's review quickly the steps to convert a TI BASIC to a SSS using an example. You need Classic99 installed.

 

1) Download the Robopods game from the site (it's at the end of the page), place in the DSK1 directory in the Classic99 installation.
2) Run Classic99, select TI BASIC. Type CALL FILE(1). Load the game with OLD DSK1.ROBOPODS
3) Press CTRL+HOME to open the Debugger (or from menu: Edit -> Debugger). In the Debugger window, set a Breakpoint. Click on the Breakpoint field and type U7=04 then press the Add button. This breakpoint intercepts the change of the background color (from the initial value of 07 of TI BASIC).
4) In the TI BASIC launch the game with the usual RUN
5) Wait until the breakpoint is reached (you'll stop to see the changing values for registers, program counter, etc.), then from the Debugger window, menu Make, select the "Save Memory As Program". It wil open a new window to allow you to save the memory. Choose TI BASIC Restore from the list, then type the name of the SSS module (in this case ROBOPODS), then press build and choose the name of the file.
6) You'll get a file with the "9.bin" suffix that you can run directly in Classic99.
7) To run the file on your TI with the FinalGROM you need to invert (a "8.bin" file) using one of the usual utilities/scripts. At the end of the page in the article there is the Java utility from Rasmus.

 

Let me know if this solves your dubts/problems.

 

Spot on... This what I was trying to understand. Mixed it all up, will try your recipe ;), makes more sense now!

Share this post


Link to post
Share on other sites
9 hours ago, oddemann said:

Spot on... This what I was trying to understand. Mixed it all up, will try your recipe ;), makes more sense now!

 

Ok, good that now the process is more clear. Just a couple of additional notes:
- if you get a memory full error, just reset the emulator and use CALL FILES(0) before loading the game. The CALL FILES(0) is not supported by the real hw, but for the created module is ininfluent and it will work also on real iron;
- the easy, fast way to set the breakpoint is to intercept the color change from the light blue (VDP value 07) to the light green (VDP value 03) when the program is run. This will work for all the programs. Otherwise, you need to check if the program sets a different color when it shows the game title (eg. in Robopods) and use that color. This will save some seconds when the program will be used after the conversion to module, allowing a fast startup.

 

Share this post


Link to post
Share on other sites
8 hours ago, acadiel said:

Can we make a TI music compilation like this? ;)

It should be possible, however we need some menu to select the different modules. It was done in some compilation by Tursi, Rasmus, etc. I don't know if it was already explained and/or there is some tool/code to use. For EA5 programs it's possible with the Module Creator tool, but it's not working in our case.

Share this post


Link to post
Share on other sites
3 minutes ago, wierd_w said:

I may have to try this with the Oregon Trail

 

It's an extended basic game-- will that alter the process?

 

Unfortunately it's only working for TI BASIC programs. 😞 We need to ask to Tursi to implement also the Extended Basic conversion feature to Classic99... 😁

 

  • Like 1

Share this post


Link to post
Share on other sites
10 hours ago, wierd_w said:

I may have to try this with the Oregon Trail

 

It's an extended basic game-- will that alter the process?

If your goal is to make a cartridge binary, then you could compile it and then use Module Maker to convert the EA5 files.  You will need to play with some of the timing and watch for constructs not implemented by the compiler.  When I did my game this way I had a separate source which I used for the compiler, but for the most part the changes necessary were minimal.

  • Like 2

Share this post


Link to post
Share on other sites
12 hours ago, tmop69 said:

 

Unfortunately it's only working for TI BASIC programs. 😞 We need to ask to Tursi to implement also the Extended Basic conversion feature to Classic99... 😁

 

@Tursi

Share this post


Link to post
Share on other sites
10 hours ago, jrhodes said:

Nope. :)

 

if your cartridge contains the Extended BASIC program, where are you going to plug in Extended BASIC? ;)

 

  • Like 1

Share this post


Link to post
Share on other sites

(Technically that's less of a concern than I make it sound, since you could theoretically create a larger cart that includes XB /and/ the program in question... ;) )

 

I might do it someday, but I just don't have a ton of time. I'll go add it to my list. ;)

 

  • Like 2

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