Xroar 0.33.1 w64 D64 problem

A place to discuss everything Dragon related that doesn't fall into the other categories.
Post Reply
EmergencyRation
Posts: 5
Joined: Tue Jun 21, 2016 6:45 pm

Xroar 0.33.1 w64 D64 problem

Post by EmergencyRation »

Hi all,

Well - I'm sort of new here - although I did register initially in August 2005 - but it seems my original ID has got forgotten. So I have registered again with a view to continuing my Dragon interest.

I've just started playing around with my Dragon again and have started out converting my cassette collection to disk (this is long overdue). This on the whole has been successful and I have converted about 130 tittles so far using Duplidisk 2. I have then converted the newly created disks to .vdk images so they are preserved forever :D and usable by emulators.

So some of the tittles I have not been able to convert with Duplidisk I have initially opted to at least store digitally as .wav files (until I can figure out another method of getting them on disk). But I have hit a problem with some of the channel 8 software tittles that run on a Dragon 64 with graphics. I can play the .wav's back into a real Dragon just fine - but Xroar seems to have an issue when switched to D64 mode (typing EXEC 48000). It fails to load the second part of the tape and reports an I/O error in 80.

(taking Perseus and Andromeda for example - it has three sections on tape; the 'loader', 'peradv' (text part) & 'perdrw' (extra graphics part))

So if I run in D32 mode (acknowledging that I will not get graphics) the .wav loads just fine (loads the first and second parts) - and I can play the game as text only. But in D64 mode it errors out as soon as the second part starts to load (which is clearly OK as it loads in D32 mode). Anyone any idea's?

Something else I have noticed with Xroar whilst playing around with these is the rewriting of .wav files as you load one (ticking rewrite and selecting an output tape file). That does not seem to work when in D64 mode - you just get 1K file?? Works fine in D32 mode.

No doubt I'm doing something wrong - I would be grateful of any suggestions.

Thanks folks.
sixxie
Posts: 1348
Joined: Fri Jul 18, 2008 8:36 am
Location: Hertfordshire
Contact:

Re: Xroar 0.33.1 w64 D64 problem

Post by sixxie »

EmergencyRation wrote: I can play the .wav's back into a real Dragon just fine - but Xroar seems to have an issue when switched to D64 mode (typing EXEC 48000). It fails to load the second part of the tape and reports an I/O error in 80.
Hmm, the version in the archive seems to load ok, even when converted to a WAV file.

Perhaps try running xroar with -no-tape-fast (although it won't be fast in 64K mode anyway), and trying -tape-channel-mode left or -tape-channel-mode right to select either channel of a stereo sample (if it is stereo) - sometimes mixing the two channels together for loading can cause I/O errors if it turns out the data is only actually recorded to one channel.
Something else I have noticed with Xroar whilst playing around with these is the rewriting of .wav files as you load one (ticking rewrite and selecting an output tape file). That does not seem to work when in D64 mode - you just get 1K file?? Works fine in D32 mode.
XRoar does all its fancy tape tricks by intercepting ROM calls. Sadly, in 64K BASIC, ROM is copied to RAM, and it becomes a lot harder for the emulator to "know" that when it hits a certain address, that's still the tape loading code.

If they're standard tape files (which for the archive version of P&A - PANDA! - it looks like they are), you can stay in 32K mode and type SKIPF three times to get the 32K ROM to read through the data, and it'll be rewritten.
EmergencyRation
Posts: 5
Joined: Tue Jun 21, 2016 6:45 pm

Re: Xroar 0.33.1 w64 D64 problem

Post by EmergencyRation »

Hey Sixxie - thanks for your prompt reply.
sixxie wrote:Hmm, the version in the archive seems to load ok, even when converted to a WAV file
Yes indeed - I can confirm that it does (I tried the .cas anyway).

But my .wav sample from my original tape does not - but I can load each section independently (in Xroar in D64 mode) - so the .wav must be OK right? Plus the .wav loads into a real Dragon from a CD player. It's Bizarre.
EmergencyRation wrote:Perhaps try running xroar with -no-tape-fast (although it won't be fast in 64K mode anyway), and trying -tape-channel-mode left or -tape-channel-mode right to select either channel of a stereo sample (if it is stereo) - sometimes mixing the two channels together for loading can cause I/O errors if it turns out the data is only actually recorded to one channel.
My sample is mono - done with a mono cassette player and converted to a mono .wav by Roxio studio music editor. I will try the method of channel separation you have described though for completion.

Strange thing is I've sampled other Channel 8 tittles (Circus for example) and it fails at exactly the same point - just post running the loader and the second program header blocks loading.
EmergencyRation wrote:XRoar does all its fancy tape tricks by intercepting ROM calls. Sadly, in 64K BASIC, ROM is copied to RAM, and it becomes a lot harder for the emulator to "know" that when it hits a certain address, that's still the tape loading code.
Thanks for confirming that - at least now I know it's not something I'm doing wrong.
EmergencyRation wrote:If they're standard tape files (which for the archive version of P&A - PANDA! - it looks like they are), you can stay in 32K mode and type SKIPF three times to get the 32K ROM to read through the data, and it'll be rewritten.
I tried this but get an error on the third graphics part - assumed this was something to do with the CLOADM memory addresses being passed to the D32 which do not exist (I'm a bit out of my depth here - so just guessing). The third part loads OK in D64 mode when loaded in isolation - i.e. CLOADM"PERDRW".

Thanks for your support - if I get to the bottom of this I will post here what I did!!
sixxie
Posts: 1348
Joined: Fri Jul 18, 2008 8:36 am
Location: Hertfordshire
Contact:

Re: Xroar 0.33.1 w64 D64 problem

Post by sixxie »

Are you trying with SKIPF in 32K mode? That'll read the file (and so trigger the tape rewriting), but not try to store it in memory.

Also, as it really *should* load, you might just be randomly hitting samples that cause problems, maybe try a low pass filter in a wave editor (say, pass under 12kHz which is about what good tape could record). Other things to try might be speeding it up slightly, or slowing it down.
User avatar
robcfg
Posts: 1530
Joined: Sat Apr 04, 2009 10:16 pm
Location: Stockholm, Sweden
Contact:

Re: Xroar 0.33.1 w64 D64 problem

Post by robcfg »

If you don't mind, you could upload your wav file anywhere for us to take a look. :mrgreen:
EmergencyRation
Posts: 5
Joined: Tue Jun 21, 2016 6:45 pm

Re: Xroar 0.33.1 w64 D64 problem

Post by EmergencyRation »

Hi all,

Apologies for the delayed response - but I can report I have had a result thanks to advice from sixxie.
sixxie wrote:Are you trying with SKIPF in 32K mode?
No - it did not occur to me to do this - but thanks for the tip.
sixxie wrote:maybe try a low pass filter in a wave editor
Yep - that did the trick :D . I don't not have a low pass filter option in Roxio so I used the graphic equalizer enhancer feature and dropped everything down 10dB's above 12kHz.

This enhanced sample now loads perfectly in Xroar - and using the SKIPF option I managed to rewrite out to another file that also loads OK. I find these .wav's from Xroar are a higher volume and allow me to load them into a real Dragon via my iPad which saves me having to burn disks.

Really appreciate your advice sixxie - I was pulling my hair out over this.
robcfg wrote:If you don't mind, you could upload your wav file anywhere for us to take a look
Happy to do this if you are still interested - don't have anywhere myself to put it though - is there somewhere on this site that acts as a repository? (it is approx 20MB)

Again - thanks for you help everyone.
Post Reply