Home Artists Posts Import Register

Content

Last days have been great. After I struggled with getting even the first games to work, because of the relativly complex CPU, the path is now much more relaxed and I want to tell you about the status.

As last time, this is all emulator only, no HDL code yet. But this emulator is completely cyclebased: every call to a submodule like CPU or PPU advances the internal logic only 1 clock cycle ahead. This, together with compatible savestates, will make implementing in VHDL very easy.

Overall, the status is currently:

- CPU 100% (but some bugs left)

- Timers 100%

- Memory Access 100% (Cartridge, SRAM, EEPROM)

- PPU 80%

- Audio 0%

And that's it. There is nothing more inside the original Wonderswan. The Color version also got a DMA.


After I got my first game(Klonoa) running, testing of other games was needed. And this is really tedious with a system with so many japanese titles where I can only randomly try things.  

So I picked up an idea from Liji, the developer of SameBoy: automatic testing. The emulator boots up every game itself, presses random buttons and looks for problems. Also the graphical output is checked: if it freezes for some seconds even with different buttons pressed, the game most likely crashed.

You can see the result in the video: it's working great. Some problems are of course not found, but it's a great help to find games still having issues. With this, I could find out that from the 117 games of the original black and white WonderSwan, 108 (92%) already boot up and get ingame.

On GBA and Lynx I started the FPGA implementation with ~80% of the games working in my emulator, so this would be by far good enough to start with the FPGA implementation and fix those few issues later on.


However, I decided to do two more things first:

- WonderSwan Color support: I want to see which parts may need a change to be prepared

- Sound: unlike other systems I did, I want to understand the sound before starting the FPGA implementation. The reason is, that the sound can access memory in parallel with the CPU and PPU and I want to have that clarified, so I don't need to redesign things later on.

That's it for now. I will report back when the next steps are done.

Have fun and a good time!

Files

WonderSwan automatic emulator testing

Comments

YoshiDragon

Excellent progress as usual. Thanks!

ALFREDO CANAS

It would be nice if you could also release the emulator later on.

FPGAzumSpass

I don't think anyone would ever use it, as I don't focus on anything that is important to actually play with it. So it lacks good UI, configurable buttons, has tearing and audio buffer artifacts because unsynced. In short: everything except the inner core is only functional as I don't care about it. But I can still push it to Github like I did with my GBA emulators and create a disclaimer that I don't improve UI stuff.