Portable Tatung Einstein Emulation
Posted: Mon Oct 02, 2023 9:25 pm
Greetings Programs!
For the past few years, I've been working on a Colecovision emulator for the DS/DSi/XL/LL. It's called ColecoDS and over the years it's grown to include 10 "cousin" systems that share similar hardware (mostly Z80 CPU with a TMS9918/29 VDP and SN or AY sound chip). Obviously the Tatung Einstein falls into such a camp - and recently the emulator got a nice bit of polish on the Tatung Einstein.
The base 64K TC-01 machine is emulated. Both .dsk files and .COM files will play.
Two Tatung Einstein disk drives are supported. The default drive 0: is a standard single-sided, 40 track, 10 sector-per-track diskette with about 190K disk space available. This is the drive that will hold and load your .dsk file image when you run the emulation.
The second drive 1: is a persistent RAM Disk that can be saved back to the SD card on your DS/DSi. This comes pre-formatted (and you can re-initialize it using the DISK icon menu) with 190K of storage. To the emulator, it looks just like a standard second disk drive. You can copy often used programs and utilities to this disk - I use it to stash away a few flavors of XBAS so I've always got the right one on hand to play games.
Both drives support read/write capabilities however, the writing will NOT auto-back those changes to your SD card. I might change that behavior in the future - but for now, any changes written to the emulated disks are transient until you go into the DISK icon menu and save them back to the SD card. I'm fairly confident that the disk write works fine - but until I get more testing hours from field-use, I don't want to inadvertently screw up an original .dsk image and leave the onus on the user to save out the disk for now.
Speaking of disk images, there are several places to find them... but I would recommend seeking out the 'Tatung Einstein Gamebase' which generally has disk images properly formatted and auto-booting for a more streamlined experience. Seek those out.
The hardest part to get right (or at least as right as I could!) was the Z80-CTC emulation. Took weeks to work that out properly.
Lastly, in addition to the standard 8K einstein.rom BIOS file (required for Einstein emulation), you can optionally provide an einstein2.rom file that will load (up to 8K) into 0x4000. This is the extra ROM slot in a real Einstein and can be used to house diagnostics roms or things like flexi-dos.
You can find this free project at my github page: https://github.com/wavemotion-dave/ColecoDS
For the past few years, I've been working on a Colecovision emulator for the DS/DSi/XL/LL. It's called ColecoDS and over the years it's grown to include 10 "cousin" systems that share similar hardware (mostly Z80 CPU with a TMS9918/29 VDP and SN or AY sound chip). Obviously the Tatung Einstein falls into such a camp - and recently the emulator got a nice bit of polish on the Tatung Einstein.
The base 64K TC-01 machine is emulated. Both .dsk files and .COM files will play.
Two Tatung Einstein disk drives are supported. The default drive 0: is a standard single-sided, 40 track, 10 sector-per-track diskette with about 190K disk space available. This is the drive that will hold and load your .dsk file image when you run the emulation.
The second drive 1: is a persistent RAM Disk that can be saved back to the SD card on your DS/DSi. This comes pre-formatted (and you can re-initialize it using the DISK icon menu) with 190K of storage. To the emulator, it looks just like a standard second disk drive. You can copy often used programs and utilities to this disk - I use it to stash away a few flavors of XBAS so I've always got the right one on hand to play games.
Both drives support read/write capabilities however, the writing will NOT auto-back those changes to your SD card. I might change that behavior in the future - but for now, any changes written to the emulated disks are transient until you go into the DISK icon menu and save them back to the SD card. I'm fairly confident that the disk write works fine - but until I get more testing hours from field-use, I don't want to inadvertently screw up an original .dsk image and leave the onus on the user to save out the disk for now.
Speaking of disk images, there are several places to find them... but I would recommend seeking out the 'Tatung Einstein Gamebase' which generally has disk images properly formatted and auto-booting for a more streamlined experience. Seek those out.
The hardest part to get right (or at least as right as I could!) was the Z80-CTC emulation. Took weeks to work that out properly.
Lastly, in addition to the standard 8K einstein.rom BIOS file (required for Einstein emulation), you can optionally provide an einstein2.rom file that will load (up to 8K) into 0x4000. This is the extra ROM slot in a real Einstein and can be used to house diagnostics roms or things like flexi-dos.
You can find this free project at my github page: https://github.com/wavemotion-dave/ColecoDS