SMS Plus with CZ80 0.92

vbt

Staff member
My old topic about this emu is too long:) I start a new one.

Here is a new beta version, it uses the so good cz80 0.92 instead of 0.90. I did only a few tests and not on a real Saturn. It should work anyway :)


Download here
 
Oh yeah, another Saturn homebrew release to try out when I'm back home. Thanks vbt for keeping it going!
 
What method are you using for rendering the SMS BG/sprites? A scanline renderer (to RAM or VRAM?) or a screen renderer using the Saturn's tiled BGs and sprites? I could see the latter being faster, but less accurate/compatible.
 
mic said:
What method are you using for rendering the SMS BG/sprites? A scanline renderer (to RAM or VRAM?) or a screen renderer using the Saturn's tiled BGs and sprites?

I use Saturn's tiled BGs and sprites.

I could see the latter being faster, but less accurate/compatible.


On PC it speed was exactly the same as before. When testing on Saturn emu I didn't see really a change. Did you test on real a Saturn ?
 
RockinB said:
Oh yeah, another Saturn homebrew release to try out when I'm back home. Thanks vbt for keeping it going!


As I have a working sound sample I can work in this point now :)
 
On PC it speed was exactly the same as before. When testing on Saturn emu I didn't see really a change. Did you test on real a Saturn ?

I haven't tested it (I can only run stuff from RAM since my saturn isn't modded). What I meant was that this method in general is faster than pure software rendering, but also less accurate since the ROM might change stuff during hblank.
 
Wow, congratulations, VBT! What a pitty that I won't have access to a Saturnh for the next 1-2 weeks. Maybe I can try it in yabause for now.
 
RockinB said:
Wow, congratulations, VBT! What a pitty that I won't have access to a Saturnh for the next 1-2 weeks. Maybe I can try it in yabause for now.


You can try on Yabause just disable NBG1 to see something, you will hear sound anyway :)
 
Here is the new beta version :) Main changes are :


- Sound support

- Sound can be disabled/enabled with the "X" button

- Smaller binary

- Font moved out of the binary


Download


NB : Enable/disable sound feature was added after burning my test CD.


smsplus_sound.jpg



(deserve a news ?)
 
vbt said:
noone feedback

A great news, VBT. Please keep it going. I'm sorry, but I cannot play the new SMS with sound until friday this week. But on friday, I'll give some feedback :)
 
Hello VBT,

it's just amazing to have an emulator running on saturn that outputs sound at almost full speed! This hasn't been done before, congratulations!

Some thought about possible improvements:

- ROM select on title and in game: when filename of previous selected files is bigger, the trailing characters are still visible when new file is selected.

- How fast the selected file skips through the list depends on the ROM loaded.

- Sound disable doesn't speed up emulation (sound still emulated in the background?).

- GG support could be improved. GG buttons don't seem to work completely. Colors may be wrong.

- Sometimes, sound repeats and plays twice.

- What's wrong with Sonic 2?

A great job, VBT!
 
RockinB said:
Hello VBT,


it's just amazing to have an emulator running on saturn that outputs sound at almost full speed! This hasn't been done before, congratulations!

:D

Some thought about possible improvements:

- ROM select on title and in game: when filename of previous selected files is bigger, the trailing characters are still visible when new file is selected.

Yes it's because I removed removed the sprintf with spaces :blush: . Itried to remove all few used and not used lib to get 65ko free and got only 60ko :( I wanted to put all look up tables in Hi work ram.

- How fast the selected file skips through the list depends on the ROM loaded.

Yes it's like this since I moved the paddle management function outside of the vblank I may put it there again to get something more constant.

- Sound disable doesn't speed up emulation (sound still emulated in the background?).

I didn't tested the feature "disable/enable sound" on a real console but I'm sure everything is disabled. I will check again.

- GG support could be improved. GG buttons don't seem to work completely. Colors may be wrong.

Sure colors are wrong I use 4bpp, about the missing buttons I can add them.

- Sometimes, sound repeats and plays twice.

I do stream playback on a small buffer, so I guess if the game is too slow or two fast it will play a sound twice. I noticed that problem.

- What's wrong with Sonic 2?

No idea I didn't try sonic 2, I will check.

A great job, VBT!


Did you see a speed loss comparing to version without sound ? I'm wondering also if CZ80 0.92 is slower I will do some tests.

Then I may work on emulating SMS tones with Saturn tones.
 
Try this one I've tested it only on emus(perfect on girigiri, a bug on tails's eye position on the title screen with yabause). Sonic Chaos was not working too on previous release(scroll init problems ?). Normally this version should work on real Saturn, I'll make a PAR version to verify :) well time to sleep :)
 

Attachments

  • sl.zip
    45.9 KB · Views: 86
Tried to move from coff to elf in order to use the latest compiler and I loose control pad management (had the same problem on my previous try) also the file size moves from 80ko to 440ko !!! what can explain this ?


EDIT : Just to say ELF objects files are smaller, cz80 ELF size is 20ko and COFF size is 24ko.

EDIT2 : Fixed, it was something wrong in the link script but pad support still doesn't work :( .
 
Here is an elf release, the paddle problems seem to be fixed (well on emus) and it looks to be faster than the coff release :)


I have the feeling paddle fix is not perfect when I play on emu, the thing I did was to call

__port = PER_OpenPort();

at each vblank end, the __ port looks to be lost wand it doesn't when I use coff compiler. If someone can help or give me a better solution :) The problems may happen with optimisations options.


EDIT: not working correctly on saturn :(
 

Attachments

  • sl_elf.zip
    49.2 KB · Views: 88
I've just burned the latest wonderboy on CD-RW and it works nice. Speed is with sound 58fps, without over 60fps. The problem of sounds playing twice is reduced very much. Only a glitch noise is coming periodically.

When stopping and continuing sound playback, the sound buffer still contains olf samples and playes them for half a second or so.

So the new compiler (v0603?) is better?
 
Back
Top