UPDATE: So I got to talking with one of my friends about this whole internal flash cart business, and he gave me an excellent idea, why not use CompactFlash cards or similar?
CF cards have a mode where the basically act like memory, perfect for storing rom data, plus they have access to anything you would need to be able to connect and use it via it's pinout. So what I plan to do is either one of two things: Build a hucard that has a cf card port built in, or hardwire in a cf card port in the system. The idea would be simple enough, use some software like WinHex to write the binary data of a rom onto the card (ie no file system). pop it in the installed cf card port and away you go.
Here is what i need help with and info on:
1. Programming a rudimentary menu and rom loader for multiple rom support.
2. Now this is the ambitious part: cd rom games on the cf card. I know this would require at the very least programming a custom system card bios that knows to read from the cf card and probably a lot of reworking to get the audio to load from the cf card. Couldn't you rip the binary data of the audio and write code in the custom system card to read it from the cf card? I want to know how feasible this would be.
3. Building on the cd rom support would it be possible to use part of the cf card's memory as the extra ram of the system card 3.0 and arcade cards? I'd imagine the problem here being the speed of the cf card, anyone know if this is feasible either?
Duo is already graciously donating a 32 mb CF card for experimenting. If anyone knows where i can get two cf card readers for next to nothing (ie < $1), one just needs to have the port intact and does not need to work, or if anyone is willing to donate that would be great too. Most of all I need good info on the questions asked, and if anyone into PCE/TG-16 coding is willing to help with the rom loader or custom system card bios that would be greatly appreciated.
End update
So I was up late last night chatting with duo and oldskool, and at some point we talked about the unused spot for a flash chip or whatever that was rumored to be a built in game but later got scrapped in the final design of the tg-16.
I got to thinking, how cool would it be to solder in a socket to the bus and install flash memory, and make essentially an internal electronically erasable/rewritable flash cart. Obviously you can't just solder in a socket in the blank silkscreened place even if you get the same rom package type, as the pinout for a sizable flash memory will undoubtedly differ. However you can solder in a socket with wires going directly to the bus via the hucard slot pins.
The theory is simple, all a hucard is is a rom with a edge connector to interface with the pce/tg-16 bus. In a few rare cases some extra ram or a battery however that is outside the scope of this mod. So I went ahead in this venture and for the time being soldered a socket up to the bus to match the pinout of a 27c801 8 megabit 8 bit eprom. I had already done a region mod, so for the 8 data lines I tapped the bus from elsewhere on the board, in my case one of the other unused silkscreened spaces for some sort of ic. I just matched the pins of the eprom to the lines that the bus expects to receive each signal from, and soldered the wires to the proper places.
I burned the eprom with Jackie Chan's Action Kung Fu us rom, stuck it in the socket, reassembled, and bam the game booted right up.
This is just the beginning as there are some obvious flaws with my current mod:
1. With a eprom I will need to disassemble the tg-16, remove the eprom, and erase it in a uv eraser every time i wish to reprogram it. This is both tedious and time consuming.
2. If an eprom is present in the socket eprom (ideally a game or demo) and I want to play a original hucard, I can't as the bus will be data from both the eprom AND the hucard which will result in garbage code and just end up confusing the cpu. To get around this the eprom would have to be removed from it's socket (again involving disassembling the tg-16....).
When I get some more free time here is what i propose as a final design:
1. At least 8 Megabits of flash based memory (big enough to hold any commercially released game; one at a time), for quick and efficient erasure and programming.
2. Usb interface installed in the tg-16 for fast reading and writing speeds compared to a parallel port.
3. Simple Pc software to read and write roms to the internal memory via usb.
4. Switch to change the program/game source, either the hucard slot or the flash chip.
Possible features
1. A loader menu for multiple games (flash memory would be of a bigger size then).
2. Hardware and software to backup both legit hucard games and contents of a Tenokoe bank and file cabinet on applicable systems and add-ons.
3. Extra ram found on system card 3.0 and arcade card pro/duo
Obvious advantages would include no longer needing a region mod/converter or grounded pin on pce systems to enjoy truly region free gaming. It would work on all pce hardware, permitting space. You would have the ability to run non commercial roms just like any flash cart and it can be used to debug code for those looking into pce programming. Lastly the one big advantage this should have over similar solutions, ie neo flash and tototek flash carts is the price point. Looking strictly at the price of parts, it's a fraction of the cost, the main cost would come about from the labor of installing the necessary parts.
It certainly wouldn't be for everyone, but I think it's a cool idea nonetheless, in fact I am surprised that no one else has done something similar, or if they have I couldn't find any evidence of it.
I need to take some pics to illustrate the process, though imo if you can solder and understand the basic theory behind the mod, it's pretty straightforward. In any case I don't have a access to a camera at the moment; I will post pics as soon as I can take em.