Jump to content

Hello, and yet another emulator


Recommended Posts

Hi everyone, I'm Mark, I'm new here so thought I'd say hi.

My first home computer was a '99 in 1982 and I learned to code TMS9900 assembly with the mini-memory cartridge.  It's still in the garage somewhere but I haven't powered it up in decades.  I have some time on my hands now (semi-retired) so decided to dust off my TI99/4A emulator written in C that I started writing for Windows 23 odd yrs ago.

At that time, it could boot from console ROM and basic video was working, but then I parked it.  I haven't used Windows in over 15 yrs - I work exclusively on Linux these days (debian and ubuntu) - so I ported it to Linux using GLUT to create display a framebuffer.  I also added sound emulation with pulse audio, tms9901 timer support and recently added cassette SAVE sound output emulation.  I'm thinking of creating a .wav file from cassette output, now that I have audio samples, and then see if I can OLD programs back in from .wav files.

This emulator is just for fun.  There are many superb emulators already out and I have no interest in trying to outdo or replace any of them.  If you want to know what's different or unique about my emulator, the answer is nothing that I know of, except I wrote it myself, which was as I said for fun.  Also, it isn't nearly as complete as some of the others.

It does have some useful (to me anyway) features for debugging such as runtime disassembling tms9900 and/or GPL code and showing comments beside them which was very useful for finding compatibility issues with games etc.

I've tested munchman, TI invaders, tombstone city, the attack and all work fine AFAICT.  Parsec might work whenever I get around to implementing bitmap mode.  I haven't tried implementing any additional hardware, disk drives, RS232, etc, but as an EE that to me is the most interesting part, so I will probably have a go at emulating legacy peripherals at some stage.

If anyone wants to browse the code it's on github here under MIT license: https://github.com/mburkley/ti994a Comments or suggestions welcome.

Oh and I'm happy to help with any other current projects that need help too now that I've built up knowledge of the internals of the tms9900 and family.



  • Like 18
  • Thanks 1
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.

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.

  • Recently Browsing   0 members

    • No registered users viewing this page.
  • Create New...