TwoMbit is a cycle accurate emulator for Sega's 8-bit game consoles
(Master System, Gamegear, SG-1000)
includes a cross-platform emulation library, so someone could build a gui without having to know the sms internals
v 1.0 beta -> v 1.0.1
- switched to gcc for compiler
- switched to QT 4.8 for Gui ( c# / .net is no more )
- build libsms (cross-plattform)
- gamegear emulation
- sg-1000 emulation
- emulating additional cart work ram (Ernie Els Golf, the castle, Othello)
- emulating bus contention
- emulating game gear bios
- emulating custom sram sizes (Shining force)
- emulating eeprom of the baseball series games
- emulating lightphaser, paddle (japanese and export), sportspad (japanese and export), 3d glasses, Terebi Oekaki
- emulating gear-2-gear at cycle level
- parallel communication (Squinky Tennis in micro machines, Primal Rage, ...)
- serial communication
- different baud rate settings
- emulating backward compatibillity of gamegear(mastergear) and sms
- emulating yamaha2413
- fex(zip, 7z, rar, gzip), bzip2, untar for compressed roms... read more
Currently I am rewriting the UI in QT. I want to leave C# and Visual Studio in general. I give the gcc compiler a try. That is the first step to make TwoMbit platform independent.
Furthermore I want to create a platform independent sms emulation library. So anyone could build a gui around it, without to have to know about the sms internals.
I woud like to go public with my cycle accurate, open source SMS emulator TwoMbit.
TwoMbit is affected by bsnes and uses the libco threading module. One thread for each core.
The Gui is programmed in C# / WPF (compiled for .Net 4.0). The emulation core is a unmanaged c++ dll. I am using directx only, so the core depends on Windows...at time
The cpu can sync each Master to the vdp or apu, of course if it's needed only. for example before register writes.
The vdp can sync to the cpu each 2 Master.
The emulator itsself is not very speed optimised at time but I think the code readability is good.... read more