Jump to content


  • Content Count

  • Joined

  • Last visited

  • Days Won


ralphb last won the day on May 2 2017

ralphb had the most liked content!

Community Reputation

1,008 Excellent


About ralphb

  • Rank

Contact / Social Media

Profile Information

  • Gender
  • Location
  • Interests
    Developers, developers, developers, developers

Recent Profile Visitors

8,010 profile views
  1. OK, then Parsec was actually a bad example. I meant regular GROM and/or ROM carts made for the 4A. We now know they work on 4s as well, which kind of invalidates my theory (but Video Chess is weird). Guess I have to buy one after all.
  2. Yes, see I haven't tried the sidecar on a QI console yet, though. I should really do this!
  3. QI and v2.2 are actually two different things: You can have QI with version 1.x and v2.2 without QI. The FinalGROM works with v2.2, as its menu is GROM. But the QI architecture did change something that prevents the FG99 from functioning. A quick look with a logic analyzer didn't reveal any differences, though. I must admit that this project is rather low priority, although I do have a QI machine. When I have more free time (i.e., next year), I can pick up the analysis of this case again.
  4. IIRC the TI 99/4 uses an entirely different menu system, as shown by early carts like Video Chess. That cart basically draws its own menu (similar to what we see on the 4A), so the entry analyzer of the FG99 gets confused. (I patched the image for the FinalGROM99.zip.) On the other hand, I assume that later cartridges (Parsec) also work on the 4? Anyway, it's hard to work on something I don't own, so if you want to make a donation, I'll see what I can do! 😁
  5. Basically any SRAM IC from this page should work: https://www.digikey.com/products/en/integrated-circuits-ics/memory/774?k=sram&k=&pkeyword=sram&sv=0&pv276=127091&pv276=130284&pv276=202821&pv276=171276&sf=1&FV=-8|774%2C69|409393%2C142|227886%2C961|407300%2C1291|220518%2C1291|220519%2C1989|0%2C2043|383917&quantity=&ColumnSort=0&page=1&pageSize=25 Note that some parts are listed multiple times in different minimum quantities, and some are not in stock. EDIT: To be safe, download the datasheet before you buy and check that the pins match the original (attached). cy62158ev30ll.pdf
  6. That also explains why xas99 -c wasn't working -- the -c option only supports 8K carts. As I said, I don't recommend it except for simple programs. I never used Fred's program, but I assume that it adds a routine that moves the program to RAM, since turning a binary into a bank-switched cart is pretty difficult. EDIT: Finding appropriate difficulty 😃
  7. I would assume that users of other computers (Atari and Vectrex, in particular) are also creating homebrew software in cartridge form? Not to mention consoles (can't remember if they're part of MAME) ...
  8. Sorry, but I have to ask if you are sure that this file is from the .rpk archive? As others have mentioned, it doesn't have a header. But I rechecked that -c does indeed produce a header. @Tursi It's using the uppercased source filename without extension as program name, unless you override it with -n. Still, I recommend not to use -c. I'm slightly confused that SAVE did produce 20 KB of data -- that is way to much for a cartridge, unless you're using bank switching. Another xdt99-specific way of doing what you want to is to use the "menu.mac" macro (located in the lib/ folder) and create a header like this (at the top of the program, but after the AORG statement) copy "menu.mac" .menu 'ENK', SFIRST With menu.mac, you still have to assemble with -b. Once you did this, you might as well copy the header from the list file to your source file. 😉 But anyway, could you perhaps post or PM me the source file, and then I can try to reproduce the original issue with -c?
  9. I think I know what's wrong -- your MAME cart wouldn't work either. Of course xdt99 needs to know where your program starts. There are two ways to define that: Doing nothing, and the very first word* is the entry (like E/A 5), or providing the start symbol with the END instruction (like auto-starting E/A 3 programs). So as an easy fix, add your start symbol to END, like " END FIRST". I'd better be adding some explanation to the documentation. *) more accurately, it's always address >6030 EDIT: example
  10. I don't know what is wrong here yet, but the Debugger should be set to ROM, not GROM.
  11. To round it off, if you already have an AORG >6030 in your code, you can use -c instead of -b to create a MAME cartridge. If you unzip the .rpk file, just use the file that is NOT layout.xml or meta-inf.xml for Classic 99. EDIT: I guess there are some bank mappings that don't work for Classic 99, but if you only have 1 bank you should be fine. The option -c will generate this GPL header automatically, and also create an .rpk archive for MESS. I suggest using -b, though, as it is more flexible.
  12. Yes, Klaus, but the line number table is sorted, and I would guess that for every access to a statement, the number table is consulted. Anyway, that table is sorted "in numerically order from top to bottom", according to Thierry.
  13. @Airshack: You asked me also in PM, and answered you there.
  14. ralphb

    SDD 99

    Strictly speaking, it's Half-CD sound, i.e., 44.1 kHz audio with 8 bit resolution. I could bump this up to 12 bits resolution, but I cannot hear a big difference. The audio is piped into the TMS 9919 so that it's merged by the beeps from the TI and you hear it from your TV/monitor. I think I presented the feature in my previous video. You need to convert a WAV or MP3 file to plain PCM format, but then can play back the PCM file by CALL PLAY(<file>). It's non-blocking, so you can use it in games, or simply as background music while typing in a BASIC program. 😉
  15. ralphb

    SDD 99

    Keep in mind I have a European system! 😊 (No idea how much slower that is compared to a US system.)
  • Create New...