jbrandwood / liberis

MIT License
7 stars 2 forks source link

SCSI DMA example doesn't work (emulator only ?) #1

Closed gameblabla closed 2 years ago

gameblabla commented 2 years ago

There's an example in examples/scsi_dma that is supposed to show a 16-colors picture on screen streamed from the CD drive. This is what it's supposed to do : https://www.youtube.com/watch?v=qOoQivbpcZQ

Instead however, this happens scsi_not_working

I'm gonna get a PC-FX soon i hope but he said before it was working on Mednafen. It's entirely possible however that they broke it since then. Or the code pushed out to bitbucket never worked in the first place.

I also tried the older GCC with his older code and it behaves pretty much the same on Mednafen.

jbrandwood commented 2 years ago

I doubt that mednafen broke it ... but it's possible. Much more likely that the change to GCC 4.7.4 and the completely-different stack layout broke it.

Liberis had/has a lot of dependence on the old GCC 2.9.5 stack layout, and I didn't find/fix all of it ... especially when Alex's SCSI support was marked as initial/unstable.

To be honest ... sorry, but fixing this is a very low priority for me right now because I'm rather busy, but I'll be happy to accept a push-request if you find the problem.

gameblabla commented 2 years ago

I doubt that mednafen broke it ... but it's possible. Much more likely that the change to GCC 4.7.4 and the completely-different stack layout broke it.

I would have agreed with you but i also tried with the older GCC 2.9 based compiler and i also got the same issue :P.

To be honest ... sorry, but fixing this is a very low priority for me right now because I'm rather busy, but I'll be happy to accept a push-request if you find the problem.

Yeah i suspected as much. I'll try to dig more into it or maybe ask marshall about it as it doesn't sound right.

gameblabla commented 2 years ago

My bad, it's actually working even on your new fork.... I had noticed something strange about bincat and out.bin and i was confused. Then i noticed that you are supposed to run "make cd" after it instead of manually invoking pcfx-cdlink... : P This properly generates the cdrom image with the right offsets.

That was dumb on my part lol. Example works fine now