Release PicoDrive revival (1.9x)


I've found quite a nasty bug that sets the money by default in Alex Kidd in Miracle World to 99999999 and yes I have confirmed it does count down :p .


Bug was in 1.80 as well but I never confirmed.
 
This new version doesn't work for me in TV Out mode, here's the log :

=======================================================================================
PND             : /media/SD2/pandora/menu/emulators/PicoDrive_185_2.pnd
PND_FSTYPE      : Squashfs
APPDATADIR      : /media/SD2/pandora/appdata/picodrive
APPDD_FSTYPE    : vfat
PND_CPUSPEED    : <unset>
EXENAME         : PicoDrive.sh
ARGUMENTS       : <unset>
=======================================================================================
[ START ]--- Mount the PND ----------
Mounting : mount -t squashfs -o ro "/dev/loop0" "/mnt/utmp/picodrive"
Mounting the Union FS : mount -t aufs -o exec,noplink,dirs="/media/SD2/pandora/appdata/picodrive=rw+nolwh":"/mnt/pnd/picodrive=rr" none "/mnt/utmp/picodrive"
[sUCCESS]--- Mount the PND ----------
[ START ]--- Starting the application ( PicoDrive.sh  ) ----------
hugetlb: 2 pages allocated.
SETUP_MEM: Device or resource busy
failed to set up layer, exiting.
SETUP_MEM: Device or resource busy
open /dev/tty: No such device or address
hugetlb: 0 pages allocated.
[sUCCESS]--- Starting the application ( PicoDrive.sh  ) ----------
[ START ]--- Restoring the frame buffer status ----------
ioctl SETUP_MEM: Device or resource busy
[ FAILED]--- Restoring the frame buffer status ----------
[ START ]--- uMount the PND ----------
[ START ]--- Waiting the Union to be available ----------
[sUCCESS]--- Waiting the Union to be available ----------
auplink:plink.c:223: AUFS_CTL_PLINK_MAINT: Inappropriate ioctl for device
rmdir: failed to remove `/mnt/utmp/picodrive': Device or resource busy
[ START ]--- Waiting the PND mount dir to be free ----------
[sUCCESS]--- Waiting the PND mount dir to be free ----------
cleanup done
[sUCCESS]--- uMount the PND ----------
=======================================================================================
Return code is : 3

It works with 1.80.
 
It uses some recently (in ~2012) discovered programming tricks (like direct color "mode"), as well as achieving effects by relying on various hardware quirks that no game ever uses (well there are a few documented cases when games do it accidentally, but not emulating it has really minor effects). PicoDrive's video code was written in ~2004-2007, it will need almost complete rewrite to support this stuff. Frankly I don't even know if I'll be able to find enough time/motivation to do this at all.

The direct color mode is really cool though, it's basically doing something the hardware was not designed to do, quite amazing that it was found over 20 years after console's release. Had it been known back in early 1990s, SegaCD would have had fullscreen 512 color videos, instead of letterboxed 61 color ones it really had (with ~30 color per line limitation), all on exact same hardware.
 
Last edited by a moderator:
The direct color mode is really cool though, it's basically doing something the hardware was not designed to do, quite amazing that it was found over 20 years after console's release. Had it been known back in early 1990s, SegaCD would have had fullscreen 512 color videos, instead of letterboxed 61 color ones it really had (with ~30 color per line limitation), all on exact same hardware.
Wow... it can really be that fast? Has anyone tried to render videos with this method? Any idea how it was discovered?
 
It uses some recently (in ~2012) discovered programming tricks (like direct color "mode"), as well as achieving effects by relying on various hardware quirks that no game ever uses (well there are a few documented cases when games do it accidentally, but not emulating it has really minor effects). PicoDrive's video code was written in ~2004-2007, it will need almost complete rewrite to support this stuff. Frankly I don't even know if I'll be able to find enough time/motivation to do this at all.

The direct color mode is really cool though, it's basically doing something the hardware was not designed to do, quite amazing that it was found over 20 years after console's release. Had it been known back in early 1990s, SegaCD would have had fullscreen 512 color videos, instead of letterboxed 61 color ones it really had (with ~30 color per line limitation), all on exact same hardware.
All I can say is: Holy crap!
 
Wow, impressive stuff. "Mode 7" on the MegaDrive? Imagine all the games that would have been made with these tricks. Discovered 2012? Cool that people still discover the Megadrive Hardware. It seems they know all corners of the chips pretty well. if we would have this deep  hardware knowledge of the Pandora Chipset, what could be possible then. :)
 
I remember CPU´s in the 70th and 80th often had not documented features like illegal opcodes and such neat stuff.  Gamedevs would never use them but Democoders loved to use them to fool disassemblers. Maybe this demo also uses this type of opcodes? I guess this would be very hard to emulate. 

digi :)
 
Ok I've uploaded 1.90 release. It adds 32X+CD support, and mostly focuses on fixing various Sega/MegaCD problems (I wanted to have solid CD before adding 32X on top of it). I believe this is second emulator after Kega Fusion to ever support MegaDrive+MegaCD+32X combo monster (which also sits under my table sometimes eating my test code). Now you can enjoy those 5 horrible FMV games in their full 32k color glory..

I've also fixed TV out (again..) and made it switch to correct layer automatically.

Haven't fixed anything else (like SMS or Herzog Zwei problems), still working on those addons..

As usual, not much left to do but just linking to repo:

http://repo.openpandora.org/?page=detail&app=package.picodrive.notaz
 
NEED... TO... RESIST... TO... PLAY... NIGHTTRAP...

Must be one of the weirdest games ever :D

I love those funny black men :)
 
Ok I've uploaded 1.90 release. It adds 32X+CD support, and mostly focuses on fixing various Sega/MegaCD problems (I wanted to have solid CD before adding 32X on top of it). I believe this is second emulator after Kega Fusion to ever support MegaDrive+MegaCD+32X combo monster (which also sits under my table sometimes eating my test code). Now you can enjoy those 5 horrible FMV games in their full 32k color glory..

I've also fixed TV out (again..) and made it switch to correct layer automatically.

Haven't fixed anything else (like SMS or Herzog Zwei problems), still working on those addons..

As usual, not much left to do but just linking to repo:

http://repo.openpandora.org/?page=detail&app=package.picodrive.notaz
Holy cow.  I'm ebaying all my physical systems... :)   Thanks
 
Titan Overdrive demo doesn't even work on my 100% original Megadrive I. It hangs after the 512 colour screen (just before the scrolling scene with the pyramid, etc.). The music continues playing, but the screen gets black and that's all. It also happens on other Megadrive I of a friend of mine. A really stressing demo.

BTW, there is no mode7 effect in that demo, it's a vertical stretching effect similar to the one used by Axelay on the SNES. There is neither horizontal stretching nor plane rotation.
 
Outstanding job as usual Notaz. I just tested Night Trap 32X CD and it is working perfectly (being playing for a couple of hours now - really wierd game :) ).

However, Corpse Killer 32X CD doesnt´seem to recognize any input (none of the buttons I´m pressing seems to be working) so I´m stuck at the "Start Game" screen. Am I missing something here? Thanks! 
 
Back
Top