Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Libretro - PGM : OLDS rom issues #1671

Open
wwark opened this issue Feb 11, 2024 · 7 comments
Open

Libretro - PGM : OLDS rom issues #1671

wwark opened this issue Feb 11, 2024 · 7 comments

Comments

@wwark
Copy link

wwark commented Feb 11, 2024

Rules and recommendations

  • don't request support for currently unsupported hardware (arcade boards, consoles and computers)
  • try to provide as much information as possible (screenshot, savestate, platform, settings, ...)
  • make sure it happens with our latest official build from https://github.com/finalburnneo/FBNeo/releases/tag/latest
  • any issue on derivated projects that doesn't happen with our latest official build must be reported to that derivated project's maintainers instead

I posted here because on libretro github side, they asked to post here meanwhile it is libretro side issue.

I have this issue below meanwhile this non merge rom of olds works on fbneo standalone.
I could add the two missing files but I think there is an issue because the game works without both files on fbneo standalone.

image

My rom:
olds$ crc32 *
80a59197 pgm_a0500.u5
98c931b1 pgm_a0501.u6
c3fcdf1d pgm_a0502.u7
066dffec pgm_a0503.u8
45337583 pgm_a0504.u11
5b8cf3a5 pgm_a0505.u12
087ac60c pgm_a0506.u13
cde07f74 pgm_b0500.u9
1546c2e9 pgm_b0501.u10
e97b31c3 pgm_b0502.u15
e41d98e4 pgm_b0503.u16
45ae7159 pgm_m01s.rom
37928cdd pgm_m0500.u1
e42b166e pgm_p01s.u20
78c15fa2 pgm_p02s.u20
1a7123a0 pgm_t01s.rom
d881726c pgm_t0500.u18
d2106864 pgm_t0501.u19
280cfb4e ram_dump
2b2f4f1e sp_v101_u1.u1
08eb9661 sp_v101_u2.u2
0a358c1e sp_v101_u3.u3
766570e0 sp_v101_u4.u4
58662e12 sp_v101_u5.u5
097046bc sp_v101_u6.u6

After checking the code of PGM it could be linked on ROM_VERIFY but I didn't find the mention on makefile of libretro. So I asked here to understand what to change to make it work.

Log of fbneo standalone loading this game :

/fbneo olds
FBNeo v1.0.0.03
Loading config from /home/xxxx/.local/share/fbneo/config/fbneo.ini
*** Starting emulation of olds - Oriental Legend Super (V101, Korea).
Cheat cpu-register INIT.
Loading graphics (pgm_a0500.u5)... (OK)
Loading graphics (pgm_a0501.u6)... (OK)
Loading graphics (pgm_a0502.u7)... (OK)
Loading graphics (pgm_a0503.u8)... (OK)
Loading graphics (pgm_a0504.u11)... (OK)
Loading graphics (pgm_a0505.u12)... (OK)
Loading graphics (pgm_a0506.u13)... (OK)
Loading BIOS graphics (pgm_t01s.rom)... (OK)
Loading BIOS sound (pgm_m01s.rom)... (OK)
Loading program (sp_v101_u2.u2)... (OK)
Loading program (sp_v101_u3.u3)... (OK)
Loading program (sp_v101_u4.u4)... (OK)
Loading program (sp_v101_u5.u5)... (OK)
Loading program (sp_v101_u1.u1)... (OK)
Loading graphics (pgm_t0500.u18)... (OK)
Loading graphics (pgm_t0501.u19)... (OK)
Loading graphics (pgm_b0500.u9)... (OK)
Loading graphics (pgm_b0501.u10)... (OK)
Loading graphics (pgm_b0502.u15)... (OK)
Loading graphics (pgm_b0503.u16)... (OK)
Loading sound (pgm_m0500.u1)... (OK)
Loading program (sp_v101_u6.u6)... (OK)
CPU-registry: CPU-registry: can't find: /home/wark/.local/share/fbneo/support/blend/olds.bld
can't find: /home/wark/.local/share/fbneo/support/blend/(null).bld
BurnTimerInit: base index 0, #chips 1
Loading program (sp_v101_u6.u6)... (OK)
Loading BIOS program (pgm_p02s.u20)... (OK)
SDLSoundInit (44100Hz) (6000FPS)
Game resolution: 448x224@60.000000
bbp: 32
setting logical size w: 448 h: 336
nVidImageWidth=448 nVidImageHeight=224 nVidImagePitch=1792
Malloc for video Ok 401408
p1 coin 5
p1 start 1
p1 up ARROW UP
p1 down ARROW DOWN
p1 left ARROW LEFT
p1 right ARROW RIGHT
p1 fire 1 Z
p1 fire 2 X
p1 fire 3 C
p1 fire 4 V
p2 coin 6
p2 start 2
p2 up Joy 0 Up (Y negative)
p2 down Joy 0 Down (Y positive)
p2 left Joy 0 Left (X negative)
p2 right Joy 0 Right (X positive)
p2 fire 1 Joy 0 Button 0
p2 fire 2 Joy 0 Button 1
p2 fire 3 Joy 0 Button 2
p2 fire 4 Joy 0 Button 3
p3 coin 7
p3 start 3
p3 up Joy 1 Up (Y negative)
p3 down Joy 1 Down (Y positive)
p3 left Joy 1 Left (X negative)
p3 right Joy 1 Right (X positive)
p3 fire 1 Joy 1 Button 0
p3 fire 2 Joy 1 Button 1
p3 fire 3 Joy 1 Button 2
p3 fire 4 Joy 1 Button 3
p4 coin 8
p4 start 4
p4 up Joy 2 Up (Y negative)
p4 down Joy 2 Down (Y positive)
p4 left Joy 2 Left (X negative)
p4 right Joy 2 Right (X positive)
p4 fire 1 Joy 2 Button 0
p4 fire 2 Joy 2 Button 1
p4 fire 3 Joy 2 Button 2
p4 fire 4 Joy 2 Button 3
reset F3
diag F2
diag2 code 0x00
service 9
service2 0
dip code 0x00
dip ESCAPE
dip ESCAPE
loading state 0 /home/wark/.local/share/fbneo/config/games/olds.fs
VideoController write word: b00000, 0000
VideoController write word: b00002, 0000
VideoController write word: b00004, 0000
VideoController write word: b00006, 0000
VideoController write word: b00008, 0000
VideoController write word: b0000a, 0000
VideoController write word: b00000, 0000
VideoController write word: b00002, 0000
VideoController write word: b00004, 0000
VideoController write word: b00006, 0000
VideoController write word: b00008, 0000
VideoController write word: b0000a, 0000
saving state 0 /home/wark/.local/share/fbneo/config/games/olds.fs
** Emulation ended (running for 2.61 seconds).
100.00% of frames rendered (154 out of a total 154).
60.00 frames per second (average).

Doing exit cleanup

Thank you for your feedback !

@barbudreadmon
Copy link
Collaborator

As said in the documentation, don't expect things to work properly if you didn't build valid romsets, and don't report issues because your romsets are invalid.

You are missing 2 files in your pgm romset and those files aren't flagged as optional (no BRF_OPT flag) :

{ "ddp3_bios.u37", 0x0080000, 0xb3cc5c8f, BRF_PRG | BRF_BIOS }, // 0x84 - 68K BIOS (V0001, custom - 07/17/97 - 19:44:59)
{ "bios.u42", 0x0020000, 0x517cf7a2, BRF_PRG | BRF_BIOS }, // 0x85 - 68K BIOS (V0001-01J, custom - 02/25/03 - 17:51:01)

Looks like the sdl port is not doing those checks while it should, which doesn't surprise me that much considering it's not really a finished port.

@Goratrix
Copy link

If the game works in your stand-alone installation, then your romset is likely built with the "separate bios" option and you have pgm.zip available there. You should either rebuild your roms without that option (so that bios files get included in every game zip) or add pgm.zip to your libretro romset.

@wwark
Copy link
Author

wwark commented Feb 11, 2024

@barbudreadmon Thank you for the explanation regarding BRF_OPT.
@Goratrix I don't have any pgm.zip file on my FBNeo standalone instance (SDL2). You can check if needed.
I will add those two files because they are required for this game.

@barbudreadmon
Copy link
Collaborator

barbudreadmon commented Feb 11, 2024

@Goratrix no, i'd say the reason is that he is using non-rebuilt mame romsets, in mame those 2 pgm bioses (ddp3_bios.u37 and bios.u42) are located in the respective romsets of the games that require them (theglad and ddp3), while FBNeo packs them with the other pgm bioses. While strictly speaking, olds doesn't use this bios, it's still considered as a requirement in our pgm romset, and the libretro port respect those checks.

@dinkc64
Copy link
Collaborator

dinkc64 commented Feb 12, 2024

I wonder if we should investigate moving those onboard-bios files over to the romsets to make things nicer in the longrun?

best regards,

  • dink

@barbudreadmon
Copy link
Collaborator

maybe ? tbh i'm not sure there is an actual reason for this romset change over MAME, it might have been a barry thing ?

@dinkc64
Copy link
Collaborator

dinkc64 commented Feb 12, 2024

yes, it probably most certainly was a barry thing, which is why i suggest we change it :)
secondly, I had this same problem back in 2014, and barry gave me a hard time about it saying that it was more correct this way. Even if it is, I don't like his ways :P

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants