Great! I would really like a good Genesis emu for the DS.
Heres an entry into the GBAX Coding Comp 2007.
Release from Lordus
"jEnesisDS" is a Sega MegaDrive/Genesis Emulator for the Nintendo DS.
It started as a port of my Java Genesis/32X emulator jEnesis. By now, the code has been
completely rewritten and many parts (CPU core, parts of GPU) are written in ARM assembler.
It didnt quite want to release it yet, but decided to do so entering it in the GBAX competition.
There is no sound emulation yet, just some code to fake the Z80 and make more games boot.
Unfortunately this can affect some games, that use the Z80 for timing, but should be O.K for most
games.
Compatibility is already quite good, but not anywhere near the Java version, due to the missing
Z80 emulation and some "shortcuts" taken to speed up the emulation.
jEnesisDS has a quite accurate software renderer, which i decided to disable for this release,
because it is a compile time option atm and cannot be choosen in the settings yet.
The hardware renderer is not complete and shows certain glitches with some games, but is already
quite usable with most games. If a game is missing sprites (Eliminate DOwn) try disabling
H-INT emulation.
You have to play a bit with the settings to make some games boot or work better.
Some games work faster with "Idle Loop Detection", others without (Castlevania, Gunstar Heroes),
and some games just boot if it is disabled.
The same goes for H-INT emulation. If a game doesnt boot just try changing those options.
Very few games will just boot, if checksum autofixing is disabled (Dynamite Heady, Thunder Force IV).
Currently i see no way to include scaling into the HW renderer, so you have to live
with parts of the screen being cut off or use the SW renderer (once it is enabled in a future release).
Changelog:
********
v0.4 * Initial Preview Release
********
- Custom ARM asm Motorola68000 CPU core
- Hardware and Software renderer (this release defaults to the HW renderer and the SW
renderer can not yet been choosen through the settings.
- VDP emulation with all DMA modes
- Horizontal & Vertical Interrupts
- Support for PAL/NTSC and all country codes (all games will run at 60Hz though)
- .smd, .bin & .gen support
- partial SRAM save/load support (doesnt work for all games yet)
- Line based renderer
- Scroll Layers A+B & Window rendering with priorities (horizontal Windows arenot emulated in the
HW renderer yet)
Download and Give Feedback Via Comments
Great! I would really like a good Genesis emu for the DS.
Really wasn't expecting this. Runs everything I've thrown at it nice and smooth, even Contra: Hard Corps. A very nice surprise, thanks.
I agree, runs with good speed and feels correct. It didn't run Pirates! Gold though love that game, but anyway Streets of Rage2 , Golden Axe 1 & 2, Mercs, PGA all feel fantastic.
Great work Lordus. The "yet" at the end of no sound emulation is heartening
First DlDI support for my games n music and now gunstar heroes on the go...... this is awsome.
This made me kind of wonder, because i know i've tested that game, so i looked into it and found out, that somehow i stupidly compiled the version i submitted with an older version of my cpu core.
I guess that my "real" current version should boot about 15-20% more games.
I am a bit too lazy atm to release a fixed version, as i didnt sleep very much lately, but i might in the next days.
Thats even greater news Lordus
I was just wondering, how realistic is the possibility of sound? As it stands now this is an incredible alpha, so either way thank you.
edit- I hope that didn't sound rude. I'm not knocking the emulator, the picodrive dev was so certain that he couldn't do sound.
It's interesting to see a Genesis emulator take advantage of the DS's 2D hardware to speed things up like this. I didn't notice any major graphical issues in my limited testing, so I'm guessing this move is more effective than it is with the SNES emulators for the DS. Does the DS have enough layers to correctly emulate all of the Genesis layers in hardware? This is a major problem of the hardware emulation of the SNES emulators for the DS, so I'm just curious if you ran into the same pitfall.
In any case, this looks great so far, so thank you for your contribution Lordus.
Just a question: about how much is the software renderer expected to slow things down? I know PicoDriveDS uses a software renderer, which is why frameskip is effective (and used) for it. With the software renderer, will a frameskip option be available to increase speed?
No problem. Of course the first question i expected before releasing it was about sound. I cannot really say much about it atm, but ill definately try everything i can to make sound work. PSG sound is realistic in my opinion, the FM chip just really needs a lot of power to be emulated. But we'll see
It would be a lot easier, if the DS had 8 BGs on ONE screen. The Genesis just has 2 layers, but there are also 2 problems: It has per tile priority and can address 2048 tiles, while the DS can just address 1024 per layer.Originally Posted by DanTheManMS
So i am already using all 4 DS layers to make up for the per tile priority and dynamically map Genesis tile indices to DS ones. This process is not perfected and if you encounter glitches, its most likely, that the game used more than 1024 unique tiles in a layer. But i am working on improving that of course.
The software renderer slows down quite a bit. Most games run "fullspeed" with a frameskip of 1-2. When the SW renderer is enabled ill also include an option to adjust frameskip.
There are currently 1 users browsing this thread. (0 members and 1 guests)
Bookmarks