Page 4 of 7

Re: MAME: Einstein Emulation

Posted: Mon Feb 17, 2020 9:15 am
by Lardo Boffin
sirmorris wrote: Sun Feb 16, 2020 11:09 am Sure does. I've attached a zip containing my rudimentary packer tool. It needs:
  • a 'donor' disk image, to copy the DOS and boot sector from.
  • a list of the files to write
....

You can run it directly and it should produce an image with biggoil in. Any Qs let me know.
C
I got that to work thanks!

The first time I tried it I had the files in a User\Lardo..... folder and it prefixed the file name in the created file with the full path making the files unusable in MAME (the file names were just the first ## number of characters of the Mac path) so I moved everything to the root of the HDD and tried again.
This worked fine but the filenames in floppy.dsk were still prefixed with \ so “biggoil.com” was “\biggoil.com”. Not a show stopper so it looks like I am in business!

Re: MAME: Einstein Emulation

Posted: Mon Feb 17, 2020 10:25 am
by Lardo Boffin
Has anyone tried saving to disc in MAME?

I have mounted the floppy produced above in drive 1 and BBCBASIC in drive 0.

I initially tried being clever and *EXEC myfile.txt to get my Beeb BBC Basic program into tatty BBC Basic and this went ok (and ran as far as trying to open the first data file!!!) but I could not save the file. It came up with a bad daya write error.

I then reset and just typed in 10 PRINT “Hello” and tried to save (to the BBC Basic disc in case mine was dodgy somehow) this but this also failed to save with the same error ‘Bad Data, Drive 0:’ ‘Try again(Y/N)?’

I did try to add a picture of this but I got the message that ‘The board attachment quota has been reached’. :shock:

I seem to be breaking everything!

Re: MAME: Einstein Emulation

Posted: Mon Feb 17, 2020 12:06 pm
by sirmorris
Yes, I see this. I did wonder if I'd broken the disk format somehow - If you could try with a dsk that hasn't been written by my program then that would eliminate this as a source of issues.

I neglected to mention that the files in the list.txt for the packer shouldn't have a path on them, but really it's a bug in my program so I'll fix that.

In the meantime - here's the partner program. It'll unpack a dsk.

Code: Select all

$ ./dskextract path-to-dsk-file
It will create a folder in the same location as the dsk file, and store the files it extracts there.

I will add the file here once the quota issue is resolved ;) in the meantime here's extract

Re: MAME: Einstein Emulation

Posted: Mon Feb 17, 2020 1:17 pm
by Lardo Boffin
sirmorris wrote: Mon Feb 17, 2020 12:06 pm Yes, I see this. I did wonder if I'd broken the disk format somehow - If you could try with a dsk that hasn't been written by my program then that would eliminate this as a source of issues.
I tried just opening the BBC Basic disc (downloaded from your github site) and saving a very small file to that as well and that failed in the same way.

I will install MAME on my mac and see if it is any different.

Note that I am saving from BBC Basic.

So to recreate:

Start BBCBasic (by typing BBCBasic)
Type 10 PRINT "Hello"
Type SAVE "HELLO"
Get error message.

Re: MAME: Einstein Emulation

Posted: Mon Feb 17, 2020 2:05 pm
by Lardo Boffin
I installed MAME on my mac and did the same with BBC BASIC (and the XTAL version) and both fail to save a program with the same error message.

On the mac I hear ‘failed’ disc access noises while it tries to write to disc and cannot do so (very nice touch by the devs there!)

Re: MAME: Einstein Emulation

Posted: Mon Feb 17, 2020 5:36 pm
by Pernod
Lardo Boffin wrote: Mon Feb 17, 2020 10:25 am Has anyone tried saving to disc in MAME?

I have mounted the floppy produced above in drive 1 and BBCBASIC in drive 0.

I initially tried being clever and *EXEC myfile.txt to get my Beeb BBC Basic program into tatty BBC Basic and this went ok (and ran as far as trying to open the first data file!!!) but I could not save the file. It came up with a bad daya write error.

I then reset and just typed in 10 PRINT “Hello” and tried to save (to the BBC Basic disc in case mine was dodgy somehow) this but this also failed to save with the same error ‘Bad Data, Drive 0:’ ‘Try again(Y/N)?’

I did try to add a picture of this but I got the message that ‘The board attachment quota has been reached’. :shock:

I seem to be breaking everything!
Sorry but the DSK format doesn't yet support saving.

Re: MAME: Einstein Emulation

Posted: Mon Feb 17, 2020 6:09 pm
by Lardo Boffin
Pernod wrote: Mon Feb 17, 2020 5:36 pm
Lardo Boffin wrote: Mon Feb 17, 2020 10:25 am Has anyone tried saving to disc in MAME?

....
Sorry but the DSK format doesn't yet support saving.
Not to worry! I guess I will park my project until I get a working tatty back.

Re: MAME: Einstein Emulation

Posted: Mon Feb 17, 2020 7:41 pm
by fatbob_gb
I couldn't get saving to work in the last few versions, also there are problems with loading Basic programs

Re: MAME: Einstein Emulation

Posted: Mon Feb 17, 2020 7:44 pm
by fatbob_gb
In the past I used the EDIP tool to create disk images but it is far from intuitive & incredibly flaky.

Sadly I cant attach the file - I get a "Board attachment quota" warning.

Re: MAME: Einstein Emulation

Posted: Mon Feb 17, 2020 9:59 pm
by Pernod
Lardo Boffin wrote: Mon Feb 17, 2020 6:09 pm
Pernod wrote: Mon Feb 17, 2020 5:36 pm
Lardo Boffin wrote: Mon Feb 17, 2020 10:25 am Has anyone tried saving to disc in MAME?

....
Sorry but the DSK format doesn't yet support saving.
Not to worry! I guess I will park my project until I get a working tatty back.
Just to elaborate a little on this ...

MAME doesn't simply open a floppy image file and write any changes back to it. When supporting a floppy image format it is converted to a low-level internal MFI (MAME Floppy Image) format which represents the floppy surface at a very low-level, and it is this that the FDC is reading and writing to. This allows the user to carry out floppy operations that the original floppy format may not support, such as non-standard formatting. For a floppy format such as DSK to support saving requires a further conversion from MFI back to the original DSK format, though the changes made may not be supported by the original format.
I guess the DSK format is also used by the Amstrad and Spectrum machines, so may be worth looking into supporting saves.