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!
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’.
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.
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.
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’.
I seem to be breaking everything!
Sorry but the DSK format doesn't yet support saving.
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.