This is blueMSX forum for the users
Navigation :: blueMSX forum
FAQ :: Search :: Memberlist :: Usergroups :: Register :: Profile :: Log in to check your private messages :: Log in

Gamereader workaround....

 
Post new topic   Reply to topic    blueMSX forum Forum Index -> Suggestions
View previous topic :: View next topic  
Author Message
samor



Joined: 18 Sep 2006
Posts: 8

PostPosted: Mon Oct 23, 2006 9:13 pm 
Post subject: Gamereader workaround....
Reply with quote

Since the implementation of the gamereader in bluemsx, it's been clear that this method, while accurate, is kinda slow, probably because the gamereader was not designed that way. It appears the MSXPLAYer emulator simply dumps the roms before running it.

That gave me an idea... a really simple one actually.
Vincent van Dam's grdump tool does just that, dumping a game.... as long as you specify the correct mapper it ought to make a working dump.

I figured, what's keeping me from making a simple batch script (or frontend, but a script seemed sufficient) that uses grdump to dump a rom and then boots that dumped rom in an emulator?
Allthough that way it's not really the gamereader running in bluemsx, it does work well, and it seems as if it's really running it (hence why I named the script PretendPlayer Wink )

Here's the batch script ...5 minutes of work was enough (I got the dump parameters from Bifi's site). For it to work, it's convenient to place both grdump.exe and this script in the bluemsx directory (and optionally make a shortcut from there).

Code:

@echo off
del temp.rom
cls
:start
ECHO PretendPlayer - simple batch script to use grdump with your favourite emu
echo.
echo Please specify the rom type inserted in the Game Reader
echo 1-Normal
echo 2-ASCII 8Kb
echo 3-ASCII 16Kb
echo 4-Konami Megarom (NO SCC)
echo 5-Konami Megarom (SCC)
echo.
set choice=
set /p choice=Your choice:
if not '%choice%'=='' set choice=%choice:~0,1%
if '%choice%'=='1' goto normal
if '%choice%'=='2' goto ascii8
if '%choice%'=='3' goto ascii16
if '%choice%'=='4' goto konami4
if '%choice%'=='5' goto konami5
ECHO "%choice%" is not a valid entry
ECHO.
goto start
:normal
grdump -b 4000 -s 8000 temp.rom
goto end
:ascii8
grdump -b a000 -s 2000 -m 7800 -n 16 temp.rom
goto end
:ascii16
grdump -b 8000 -s 4000 -m 7000 -n 8 temp.rom
goto end
:konami4
grdump -b a000 -s 2000 -m a000 -n 16 temp.rom
goto end
:konami5
grdump -b a000 -s 2000 -m b000 -n 16 temp.rom
goto end
:end
bluemsx temp.rom


That's all very basic, yes (just the most common mappers too).
Something like this could be "fancified" in a frontend, or, what I think would be better, it could be easily implemented within BlueMSX.
While it's more of a pretend-mode than true cartridge emulation, due to the gamereader's design I think you're gonna end up with something like this anyway.
Back to top
View user's profile Send private message
BiFiMSX



Joined: 15 May 2004
Posts: 72

PostPosted: Thu May 17, 2012 5:03 am 
Post subject:
Reply with quote

Nice and simple... there are a few small side notes about this:

1. In the batch file the Normal option only dumps 32KB in a single range. There is no way to dump 8KB, 16KB or 48KB (grdump needs 2 ranges to dump 64KB) in any of the other ranges.
2. Yes, it's slow, but blueMSX can run many more cartridges like this without the requirement of extra romtype emulation, as the actual hardware is used.
_________________
バイファイ

Personal Home Page, Funet MSX Archive, MSX IPS Patch Archive
Back to top
View user's profile Send private message Visit poster's website
Display posts from previous:   
Post new topic   Reply to topic    blueMSX forum Forum Index -> Suggestions All times are GMT
Page 1 of 1

 
Jump to:  
You can post new topics in this forum
You can reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum


Powered by phpBB © 2001, 2005 phpBB Group