Jump to content
Retrospect

TI-99/Sim is quite good ... however ...

Recommended Posts

 

ti99sim-sdl -f PARSEC.ctg

the -f is to full-screen. I've tried this all - ways and i'm wondering if i somehow installed it all wrong.

Share this post


Link to post
Share on other sites

the -f is to full-screen. I've tried this all - ways and i'm wondering if i somehow installed it all wrong.

 

what os/varient?

 

thank you! -f made my window manager wig out ;) much better in a window

Share this post


Link to post
Share on other sites

Yeah... I didn't try it that long... I was able to get it to compile and then I was sort of lost.

 

So this was thru homebrew SD without modchip ?

Share this post


Link to post
Share on other sites

 

what os/varient?

 

thank you! -f made my window manager wig out ;) much better in a window

You're welcome ... yeah the full screen is good on my external monitor but not on the native one.

 

Linux Lubuntu, I think upwards of issue 14 ... ?

 

It's a strange one , as I was able to make the ctg from the ti99 os bios roms .... in order to get it to even work ... and it does come up ... I tested ti basic with a sound scale and a 0-100 count and it never hesitated once .... just wish I could do two things now .... Get games working on it, and most importantly, learn how to use the disk images, 'cos im lost. lol.. totally.

Edited by Retrospect

Share this post


Link to post
Share on other sites

I just compiled the latest version of TI99Sim (version 0.0.12) on my Raspberry Pi 2, on stock Raspbian. It compiled fine and I was able to create and install the main rom cart. Like described above though, the emulator comes up if I launch it with no carts, but if I specify a cart file I either get segmentation fault if I run as a regular user and it bombs back to the command prompt, or if I run as root by sudoing it, it still bombs, but I don't see the segmentation fault error. The behavior is the same whether or not I force full screen with the -f qualifier.

 

Unfortunately, previous versions (including 0.0.11) don't seem to compile on the Pi 2, and since it's ARM based, there are no binaries available (that I can find, at least). I was going to roll this into my Emulation station / RetroPie setup, but it's not very useful with just being able to run stock TI basic.

 

I'm running over 20 other emulators, most of which use SDL on this pi, so I'm pretty sure that this is specifically a Ti99sim problem.

 

If anyone comes up with a fix or finds an update that makes this work, please post it here.

 

Thanks.

Share this post


Link to post
Share on other sites

I was in communication with the author for a short spell, he mentioned something about updating the emulator in some way, but he's stopped communicating now. In the end, nothing I tried worked, I tried using the old convert-ctg from a previous version but with no positive results.

 

This is a real ball-kicker for me because when the emulator popped up on screen, it's speed was flawless, there was none of the sound issues or lag associated with other emulators, it was great. I just couldn't mount software. Which meant I was stuck with a base 16K console and no way to save. Hmph.

Share this post


Link to post
Share on other sites

I have some good news on this topic. I emailed TI99sim's author, Marc Rousseau last night and described the problem in great detail, and pointed him to this forum thread so that he'd know it wasn't just me having the problem. He got back to me a few hours later. He said that he'd found the problem with the cartridges not mounting properly a while back and knew how to fix it, but he just hadn't had time to do a proper release yet. To my pleasant surprise, he told me how to fix it in the interim. I tried the fix he gave me last night, which involved modifying one of the source files a bit and compiling it with the modification. I tested it on One of my Raspberry Pi 2s last night and it worked perfectly. Ti99sim now loads any cartridge that I throw at it and it's rock-stable. I did the same fix today on another machine and it worked just as well there. I emailed him back, thanked him, and and asked him if I could post his fix back to the forum. He told me to go ahead and post it as it still might be a bit before he gets the fixed release out.

 

Here's what he had to say...

 

It turns out there's a bug related to the Gram Kracker emulation that causes the crash (and I've always had a cartridge file for it present which masks the problem so I never saw it during testing). After seeing the discussion on the AtariAage forums, I'll try to get an update out soon.In the meantime, if you're comfortable modifying code and recompiling, you can edit the beginning of the code in the InsertCartridge method in ti994a-sdl.cpp to the following and running 'make':

 

// Save the contents of battery-backed RAM

if(( m_pGramKracker != nullptr ) &&

( m_GK_WriteProtect != WRITE_PROTECT_ENABLED ) &&

( m_CpuMemoryInfo[ 6 ] == m_pGramKracker->GetCpuMemory( 6 )))

 

 

There wass another bug introduced in 0.0.12 related to creating cartridge files (using convert-ctg from an older release should work). Basically, you need a dummy file present that matches the 'base' name (I added a check for the file in the wrong place) for it to work. So, until I get it fixed, either use an older version or type "touch /path/parsec.bin" before running it (you can delete it after you're done). FYI, the convert-ctg program should handle mixed case even on Linux.

 

Feel free to pass along the information. I'm hoping to get a simple patch together and posted this weekend.

 

 

So there you have it. If you can modify the source file and compile, you can have a working TI99sim this afternoon. Assuming you untar the ti99sim-0.0.12 archive into your home directory (on Linux), the exact file you need to modify is "~/ti99sim-0.0.12/src/sdl/ti994a-sdl.cpp". It's pretty much as simple cut & paste operation. If you need a binary release, it sounds like he may come out with one fairly soon. Obviously, make sure that you get the formatting right if you modify the source file. There are some leading tabs in there.

 

The other bit he was talking about toward the end of the quote is regarding convert-ctg. I found that I couldn't get the version that compiled with 0.0.12 to work. It seemed like it couldn't ever find the source c.bin and g.bin files. He describes a possible workaround there, but rather than do that, I just used the version of convert-ctg that came with a binary release of ti99sim-0.0.10 on a Windows XP machine and it didn't have any problem finding the two bin files and making a ctg from them.

 

Hope this helps.

Share this post


Link to post
Share on other sites

I have some good news on this topic. I emailed TI99sim's author, Marc Rousseau last night and described the problem in great detail, and pointed him to this forum thread so that he'd know it wasn't just me having the problem. He got back to me a few hours later. He said that he'd found the problem with the cartridges not mounting properly a while back and knew how to fix it, but he just hadn't had time to do a proper release yet. To my pleasant surprise, he told me how to fix it in the interim. I tried the fix he gave me last night, which involved modifying one of the source files a bit and compiling it with the modification. I tested it on One of my Raspberry Pi 2s last night and it worked perfectly. Ti99sim now loads any cartridge that I throw at it and it's rock-stable. I did the same fix today on another machine and it worked just as well there. I emailed him back, thanked him, and and asked him if I could post his fix back to the forum. He told me to go ahead and post it as it still might be a bit before he gets the fixed release out.

 

Here's what he had to say...

 

It turns out there's a bug related to the Gram Kracker emulation that causes the crash (and I've always had a cartridge file for it present which masks the problem so I never saw it during testing). After seeing the discussion on the AtariAage forums, I'll try to get an update out soon.In the meantime, if you're comfortable modifying code and recompiling, you can edit the beginning of the code in the InsertCartridge method in ti994a-sdl.cpp to the following and running 'make':

 

// Save the contents of battery-backed RAM

if(( m_pGramKracker != nullptr ) &&

( m_GK_WriteProtect != WRITE_PROTECT_ENABLED ) &&

( m_CpuMemoryInfo[ 6 ] == m_pGramKracker->GetCpuMemory( 6 )))

 

 

There wass another bug introduced in 0.0.12 related to creating cartridge files (using convert-ctg from an older release should work). Basically, you need a dummy file present that matches the 'base' name (I added a check for the file in the wrong place) for it to work. So, until I get it fixed, either use an older version or type "touch /path/parsec.bin" before running it (you can delete it after you're done). FYI, the convert-ctg program should handle mixed case even on Linux.

 

Feel free to pass along the information. I'm hoping to get a simple patch together and posted this weekend.

 

 

So there you have it. If you can modify the source file and compile, you can have a working TI99sim this afternoon. Assuming you untar the ti99sim-0.0.12 archive into your home directory (on Linux), the exact file you need to modify is "~/ti99sim-0.0.12/src/sdl/ti994a-sdl.cpp". It's pretty much a simple cut & paste operation. If you need a binary release, it sounds like he may come out with one fairly soon. Obviously, make sure that you get the formatting right if you modify the source file. There are some leading tabs in there.

 

The other bit he was talking about toward the end of the quote is regarding convert-ctg. I found that I couldn't get the version that compiled with 0.0.12 to work. It seemed like it couldn't ever find the source c.bin and g.bin files. He describes a possible workaround there, but rather than do that, I just used the version of convert-ctg that came with a binary release of ti99sim-0.0.10 on a Windows XP machine and it didn't have any problem finding the two bin files and making a ctg from them.

 

Hope this helps.

 

BTW, I've attached a text file version of this post. The forum refuses to preserve the source file mod with the leading tabs, even if I try to put it inside CODE tags.

ti99sim-atariage.txt

Edited by Paradroyd
  • Like 3

Share this post


Link to post
Share on other sites

Marc Rousseau is a good guy. I've known him for about 30 years now. . .assuming he remembers the crazy American TI guy he was always running into in Germany. :)

  • Like 1

Share this post


Link to post
Share on other sites

Marc Rousseau is a good guy. I've known him for about 30 years now. . .assuming he remembers the crazy American TI guy he was always running into in Germany. :)

 

I don't know him personally, but I have to say, I am impressed with him.

Edited by Paradroyd

Share this post


Link to post
Share on other sites

I have it up and running on a 3rd Pi 2 now with no issues, though it's pretty much set up like the others so that's not too surprising. I'm going to try compiling it on my HP Chromebook on Ubuntu 14.04 (via Crouton) later today. It'll be interesting to see what I run into.

Share this post


Link to post
Share on other sites

Success! I got it to compile on the Chromebook.

 

tisim-chromebook1.jpg

 

tisim-chromebook2.jpg

This was not nearly as effortless as getting it working on the Pis. I had to install g++ (probably an oddity of the Chromebook chroot environment) and a couple of development libraries. This might be the stuff that you were running into when trying to get it to compile on your Ubuntu setup.

 

Specifically I had to "sudo apt-get libsdl-image1.2-dev" and "sudo apt-get libcurl4-openssl-dev". After that, and making the fix to ti99sim-sdl (and fixing a few typos I introduced somehow), though I still get a couple of warnings, it compiles and seems to work fine.

 

The one oddity is that I can't get sdl to init unless I have X running. Again, this is probably another weird side effect of the Chromebook chroot environment. Vice behaves the same way on there.

Edited by Paradroyd
  • Like 2

Share this post


Link to post
Share on other sites

The fixes for TI-99/Sim are now on Marc Rousseau's website and available for download. He has also changed the version number. It is now 0.12.1; the previous version was 0.0.12.

 

I compiled the Linux versions for Fedora (my Linux of choice) and Ubuntu. I had some experience doing this in the past (as well as for Windows). But that was before when I was compiling 32-bit versions. It took a bit to get the SDL and ssl dependencies figured out. They compiled fine and are functional.

 

I also tried it on my Raspberry PI 2. The binary Linux version for armhf ran fine and I tested with Parsec.

 

I have NOT been able to compile the source on the RPI2 (Raspbian). The compiler complains: "g++ error: unrecognized option '--std=c++11'"

Share this post


Link to post
Share on other sites

Marc Rousseau is a good guy. I've known him for about 30 years now. . .assuming he remembers the crazy American TI guy he was always running into in Germany. icon_smile.gif

I think you know a different Marc Rousseau. I'm pretty sure I've never been to Germany.

 

I have NOT been able to compile the source on the RPI2 (Raspbian). The compiler complains: "g++ error: unrecognized option '--std=c++11'"

Forgot to update the rules.mak for that one before uploading: On raspberry pi, try using --std=c++0x instead.

  • Like 1

Share this post


Link to post
Share on other sites

 

Forgot to update the rules.mak for that one before uploading: On raspberry pi, try using --std=c++0x instead.

 

Thank you. That worked! Welcome to AtariAge.

 

mdorman

Share this post


Link to post
Share on other sites

I think you know a different Marc Rousseau. I'm pretty sure I've never been to Germany.

 

Forgot to update the rules.mak for that one before uploading: On raspberry pi, try using --std=c++0x instead.

 

Thanks for updating this and for giving me a fix while you were working on it! I have it worked into my Emulation Station setups and it works great!

  • Like 1

Share this post


Link to post
Share on other sites

I think you know a different Marc Rousseau. I'm pretty sure I've never been to Germany.

 

Forgot to update the rules.mak for that one before uploading: On raspberry pi, try using --std=c++0x instead.

 

Welcome to Atariage! I just wanted to say that it was your emulator that got me back into the TI a couple of years ago, and I even had some fun hacking support for the Sega Master System's "mode 4" into your VDP emulation code (before I knew about the F18A).

 

So, thanks!

Share this post


Link to post
Share on other sites

How many diffs from baseline? I didn't really know what I was doing when I was porting to the Wii... I just made it crash.

Share this post


Link to post
Share on other sites

Welcome to Atariage mrousseau! It is always fantastic to have developers of important software join the fold!

Share this post


Link to post
Share on other sites
Hello everyone,

I installed this great emulator on my Raspberry Pi 2, but I have a problem how to attach and use the floppy dsk image.

Whether someone can say which is the correct syntax, because obviously I'm wrong somewhere.


I have used the following example: ti99sim-sdl -f --dsk1=games.dsk xbasic.ctg but never able to load something from the disk, I always get I/O error.

Is there any command in basic or some other way, to check first whether the floppy disk is properly attached or not?

Edited by retrofan11

Share this post


Link to post
Share on other sites
In the meantime, I tried to convert dsk image in another format (PC99, v9t9 etc), but still without success.

Did anyone ever get to the emulator works with floppy disks or this feature does not work properly in the RPI version at all?

I tried both version one with binaries and other compile from source, but the result is the same.

I'm running out of ideas and I can only ask someone who has this emulator on Rpi2, to try and let us know what happens.

Cartridges work normally, but attaching disk image does not work and I always get the message I / O error 00 while reading dir, or I / O error 60 if I try to save something.

Share this post


Link to post
Share on other sites

I don't know ti99sim, but the error messages x0 (00, 60) usually indicate that the device is not found. If there were any issue with the disk image, I'd expect to see some *6 error message.

 

Unfortunately, I cannot recommend MESS for your purposes, because MESS needs much higher CPU power than the RPi can offer. I tried it :-) .

Share this post


Link to post
Share on other sites

I don't know ti99sim, but the error messages x0 (00, 60) usually indicate that the device is not found. If there were any issue with the disk image, I'd expect to see some *6 error message.

 

Unfortunately, I cannot recommend MESS for your purposes, because MESS needs much higher CPU power than the RPi can offer. I tried it :-) .

lol ... i once tried to get mess running on a single-core netbook with about 1.6ghz of main power. Of course, it didn't have any graphical prowess either. When the 4a booted under that, it was the longest, most choked beeeep I've heard in my life. It runs pretty good with dual-core 2.1GHz though. Just.

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