PC98 core almost done, Help Needed

Issues: The audio is in sync but pitch is broken and it stutters. Have only compile tested for mac so far.(will likely work with any linux based os) There is no buildbot or core info file.

Fixed: Can only load np2.cfg files not roms. Keyboard input may not work.

Help Needed, it works but is completely unusable right now.

2 Likes

Yay! :smile:

Thought it was dead. I’m happy to see those Sioux named commits multiplied.

It has been copied to the libretro git account. This is only so others can contribute for now.

Issues: The audio is in sync but pitch is broken and it stutters. Keyboard input may not work. Can only load np2.cfg files not roms. Have only compile tested for mac so far.(will likely work with any linux based os) There is no buildbot or core info file.

Help Needed, it works but is completely unusable right now.

Nice works! i have to learn how use it now :smile: I put an np2 folder and load an np2.conf but only get an insert disk screen ( better font when np2 folder exist).

Its not np2.conf its np2.cfg so it may not work because of that too.

yes I use np2.cfg even if i wrote .conf. and only got insert disk screen , my np2.cfg must be not correct (taken from neko 2 project android) could you provide an working np2.cfg ?

Btw it’s miss the link.t on linux to build.

It was booting in recovery mode I think because every keyboard key was pressed due to the key up function incorrectly calling key down.

Fixed the keyboard and link.T

The insert disk was caused by bad key polling!

There is an very little pb with link.T , on unix and other platform , it find link.T in libretro/link.T not link.T (as we are inside libretro folder already) LDFLAGS += -shared -Wl,–version-script=libretro/link.T sould be LDFLAGS += -shared -Wl,–version-script=link.T

the other major pb I found is your dosio.c/h implementation that use filestream and retro dirent/stat, as it empty the hdi file we pass at launch.

But if I replace by the one found in X11 folder (using fopen/fread/ftell ect…) it work fine ! hdi load and doesn’t empty my hdi file at end. (I just define the #define G_DIR_SEPARATOR “\” and remove G_BEGIN/END_DECLS as it based on glib)

it’s a quick hack to test it ,BTW dosio implementation found in sdl2 folder should be a better solution as it handle unix/win32/wutf8 platform.

BTW good job , with your effort we will finally got an standalone PC98 core !

Any way to compile it for windows yet?

Tried a simple make but got this. Another test with platform=win.

Thanks for the fix, sucks that libretro file io is not doable though.

You can try for windows and I will merge your fix if you succeed, but I will not support windows because it has become adware.

Was the sound ok when playing?

windows user wont have support for this core because its adware?

I am not going to sabotage windows support like desmume and pokemon but I will not support it.

Any computer that can run windows can run linux too so no cross compatibility is lost from this.

Proof:

Ehh, I’ve never seen any ads in the OS since upgrading from 7 and I’ve had Chrome pinned since the start. Only thing I did was disable that option that shows stuff on the lock screen during initial setup. Pretty easy. The privacy options are all grouped together in the settings app to toggle stuff off (although you have to add a registry key to completely disable telemetry). And there’re plenty of Windows users still on 7 and even XP that are worth thinking about.

Anyways, I have no doubt someone will push a fix to get this compiling on Windows. I got a few games to try out on it waiting.

I’m still on windows 7 for various reasons. Doesn’t it defeat libretro multiplatform purpose? :confused:

sorry i dont remember for sound, i will check again later. here my buildfix for win64 (crossbuile done in linux) build with make -f Mafkefile.libretro platform=wincross64 it build a dll core , but not tested.

2 Likes

tested with wine (sound are choppy in game)

Thanks! I can make it compile and run too now! :smile:

Yes, it’s slow and the sound is really choppy here too on win7 x64. I see it’s using 44100, isn’t 48000 better for libretro for some reason I forgot (sync or something)?

I can change the audio rate but theres something else going on with the sound too, like the emu wont produce enough samples per frame for RetroArch.

Yes ,sound is very choppy !

I think there is a mistake with audio_batch_cb(fixed_samples, count * 2); for a 44100 it’s audio_batch_cb(fixed_samples, 735); (44100/60) no need to x2 it auto handle L/R . So you need to change to audio_batch_cb(fixed_samples, count ); if i set audio_batch_cb(fixed_samples, count ); fps are now better near 60 fps .

but there is always a weird pb with audio implementation,

I reverted sound.c.ORIG to sound.c and add a patch (in soundmng.c) ,and it seem and sound better than before.

There is also a pb with aspect ,i think you define are interpreted as integer not float .

if i change your define 4/3 to 4.0/3.0 aspect are better! (you have to display image as it’s not visible embedded.)

2 Likes