BSAVE addresses

Page 1/2
| 2

By SgtPinback

Supporter (8)

SgtPinback's picture

06-04-2015, 19:52

Hi,

i got a Philips VG-8010 and some tapes i want to backup to PC (.wav) and maybe use in OpenMSX.
So i connected a cassetteplayer to line-in of my soundcard and recorded it with Audacity.
One tape sounds really bad, the wav file doesn't work in OpenMSX, the wav2cas tool fails too (i tried different parameters) I even tried different Cassetteplayers i got and different volume levels. I get no 'Found' after the header part.

But what works is: playing the same wav on PC (Audacity) back to the original MSX. (Found, and the game is running)

So i thought i need to get a clear signal by saving it back from the origMSX to PC/wav
It works for the BASIC programs i got, i just need cload"FOO" then csave"FOO",1
then i got a clean wav file that works everywhere.

Now for binary files the syntax is
BSAVE "name",start address,end address,execution address

I wonder where i could find those addresses. I found some old postings on the Internets that say:

start: PRINT PEEK(&hFCBF)+256*PEEK(&hFCC0)
end: PRINT PEEK(&hF87D)+256*PEEK(&hF87E)

Now what is missing is the exec address, how do i find that?
I tried to use the start addr as exe addr which didn't work well...
Also a problem is, when there is a loader. I was able to bsave the loader, but not the actual game part that comes afterwards. Is there a trick to bsave that part back?

I've found a tool called 'tapdir' (a zip containing .bas .bin .ldr) but how can i get that to my MSX? I need to convert it to .wav and input it to the MSX, is there a tool for that too?

Login or register to post comments

By ddehaan

Resident (60)

ddehaan's picture

06-04-2015, 22:54

You could use a tape copier tool. Load the wav with Audicy in your MSX with a tape copier tool running. Then save it back to the pc using Audicy. I used Tones Tape Copier in the 80's/90's but don't have it anymore. Don't know if there are other tools for the purphase.

By Manuel

Ascended (19270)

Manuel's picture

06-04-2015, 23:30

You can convert it to wav with openMSX, just save it to a new virtual tape in openMSX... ("cassetteplayer new") Then you can load that wav into your MSX.
By the way, the original TAPDIR is only a basic program. That's slower (because it pokes the machine language program into memory first), but it might be easier to get that running first, as you can easily save it to virtual tape (i.e. a wav file) with csave.

By hit9918

Prophet (2927)

hit9918's picture

07-04-2015, 18:24

ok I made a little tool to print casette header.
to get those bload addresses.

https://sites.google.com/site/tueftlerlabs/home/downloads/ca...

By SgtPinback

Supporter (8)

SgtPinback's picture

08-04-2015, 19:15

ddehaan wrote:

You could use a tape copier tool. Load the wav with Audicy in your MSX with a tape copier tool running. Then save it back to the pc using Audicy. I used Tones Tape Copier in the 80's/90's but don't have it anymore. Don't know if there are other tools for the purphase.

Sounds good, i didn't find any of these programs yet...
IIRC i just used a tapedeck with two tape slots back then in the 80s to copy things...

By SgtPinback

Supporter (8)

SgtPinback's picture

08-04-2015, 19:21

Manuel wrote:

You can convert it to wav with openMSX, just save it to a new virtual tape in openMSX...

OK but how would i get it into openMSX first? It is able to load wav/cas/rom ...

By SgtPinback

Supporter (8)

SgtPinback's picture

08-04-2015, 19:22

hit9918 wrote:

ok I made a little tool to print casette header.
to get those bload addresses.

Great! But how do i load it into my VG-8010, i just have Cassette input...

By Manuel

Ascended (19270)

Manuel's picture

08-04-2015, 20:50

SgtPinback wrote:
Manuel wrote:

You can convert it to wav with openMSX, just save it to a new virtual tape in openMSX...

OK but how would i get it into openMSX first? It is able to load wav/cas/rom ...

On openMSX you could emulate a machine with a disk drive for instance and use dir-as-disk to load the program into MSX-BASIC on that machine and from there save it to virtual tape.

By SgtPinback

Supporter (8)

SgtPinback's picture

08-04-2015, 21:14

Manuel wrote:

On openMSX you could emulate a machine with a disk drive for instance and use dir-as-disk to load the program into MSX-BASIC on that machine and from there save it to virtual tape.

I found http://openmsx.sourceforge.net/manual/user.html#dirasdisk
Sounds like a useful feature :-)

Currently i'm using '-machine Philips_VG_8010' because i got this as real hardware too.

$ openmsx -machine Philips_VG_8010 -diska tapdir/
Fatal error: No drive named 'diska'.

How would i enable disk drive for this one? Or find a machine that has one?

By Manuel

Ascended (19270)

Manuel's picture

08-04-2015, 23:04

Yeah, just use another machine, that's easiest (like the Philips NMS 8250 or so). Alternatively, you could plug in an external disk drive like the Sony HBD-F1.

By SgtPinback

Supporter (8)

SgtPinback's picture

09-04-2015, 19:26

Manuel wrote:

Yeah, just use another machine, that's easiest (like the Philips NMS 8250 or so). Alternatively, you could plug in an external disk drive like the Sony HBD-F1.

Thanks, that worked :-)

$ openmsx -machine Philips_NMS_8250 -diska tapdir/

Unfortunately i never had a real external disk drive for my Philips VG-8010.

TAPDIR works now on the realMSX, i got some (start, end, exec) addresses printed on screen.
Now the only problem left is, how do i 'resave' the MAIN part of a game?
I got one game that has a LOADER (header, data) that displays some graphics first (and notes i'm ignoring), and after that there is another block MAIN (data) without a header.
Is it possible to read that too somehow? And save it back?

Page 1/2
| 2