The TIM monitor as implemented for PET took the command:
.S 02,NAME,0400,076D
to save the data in memory $0400-$076D to the tape in casette unit 2 giving the file the name "NAME". But this command is not accepted by the TIM monitor in the ROM of CBM8032. But this monitor can also save/load from tape, it is only another syntax (more possibilities for "save" possibly?). Does anybody know the correct syntax for the newer version?
TIM Monitor PET/CBM
Hi Mats,
It's exactly the same monitor as was shipped in the "new ROM" (BASIC 3.0) PETs. On the "old" ROM PET (BASIC 2.0) you had to load it from tape. There have been 3rd party monitors that may have used a different command syntax but TIM's has never changed.
TIM does have access to the IEEE floppy drives, but you have to use the "new ROM" or BASIC 3.0 disk "commands". The built in disk commands of BASIC 4 (DLOAD, DSAVE etc) are not available from within TIM. You then need to include the drive reference in the file name, eg :
S "0:TEST",08,0400,0776 (save to drive 0 on disk unit
Just for reference, the assigned IEEE device numbers are as follows on PETs/CBMs:
00 : Keyboard (input only)
01 : Cassette #1
02 : Cassette #2
03 : Screen (output only)
04 : Commodore printers (default, can be changed by reprogramming the printer)
08 : Commodore disk units (default, can be changed by reprogramming the disk unit)
One final thought, on Commodore floppy disk units drive "0" is usually on the RIGHT.
George
It's exactly the same monitor as was shipped in the "new ROM" (BASIC 3.0) PETs. On the "old" ROM PET (BASIC 2.0) you had to load it from tape. There have been 3rd party monitors that may have used a different command syntax but TIM's has never changed.
TIM does have access to the IEEE floppy drives, but you have to use the "new ROM" or BASIC 3.0 disk "commands". The built in disk commands of BASIC 4 (DLOAD, DSAVE etc) are not available from within TIM. You then need to include the drive reference in the file name, eg :
S "0:TEST",08,0400,0776 (save to drive 0 on disk unit
Just for reference, the assigned IEEE device numbers are as follows on PETs/CBMs:
00 : Keyboard (input only)
01 : Cassette #1
02 : Cassette #2
03 : Screen (output only)
04 : Commodore printers (default, can be changed by reprogramming the printer)
08 : Commodore disk units (default, can be changed by reprogramming the disk unit)
One final thought, on Commodore floppy disk units drive "0" is usually on the RIGHT.
George
Ah that it explains it....
The first edition of the PET manual could best be described as a "great work of fiction lightly spinkled with a few facts". At the time Commodore were a legend in the industry for the attrociousness of their manuals. Much of what appeared in the early manuals was, for want of a more polite way of putting it, utter crap.
For more accurate information take a look at :
http://www.commodore.ca/products/pet/commodore_pet.htm
Although even their TIM manual is wrong. I've never seen an actual version of TIM for the old ROM PETs on tape that used any syntax other than :
S "<name>",<device>,<start addr>,<end addr>
A couple of good books to track down are "The PET/CBM Personal Computer Handbook" and, bugger cant remember the title but I'll dig it out at home tonight and post it up.
George
The first edition of the PET manual could best be described as a "great work of fiction lightly spinkled with a few facts". At the time Commodore were a legend in the industry for the attrociousness of their manuals. Much of what appeared in the early manuals was, for want of a more polite way of putting it, utter crap.
For more accurate information take a look at :
http://www.commodore.ca/products/pet/commodore_pet.htm
Although even their TIM manual is wrong. I've never seen an actual version of TIM for the old ROM PETs on tape that used any syntax other than :
S "<name>",<device>,<start addr>,<end addr>
A couple of good books to track down are "The PET/CBM Personal Computer Handbook" and, bugger cant remember the title but I'll dig it out at home tonight and post it up.
George
I think that the PET User Manual from 1978 is very well written and I doubt that there is any error in it. And the description of the TIM monitor was definitely correct! What must have happened is that somebody thought that the way the arguments for TIM were given
S 01,MONITOR,0400,076D
was not in line with the BASIC syntax
SAVE "MONITOR",1
and it was changed for the benifit of the users (easier to remember with only one convention)
S 01,MONITOR,0400,076D
was not in line with the BASIC syntax
SAVE "MONITOR",1
and it was changed for the benifit of the users (easier to remember with only one convention)
I am probably beating a dead horse with this response. I remember using a PET 8032 while I was in elementary school, and that was one of my first introductions to 6502 machine language coding. It had a Monitor built into ROM, but to get into it, you had to execute a command called MONITOR from BASIC 4.0 (this command is also in BASIC 7.0 too, used on the Commodore 128).
I seem to recall the command ordering as:
S device, "FILENAME", start, end
Yes, the device came first. And yes, device 8 was recognized as the disk device (dual drive unit, so filenames had to use 0: or 1: in their prefix). To overwrite a file, you also had to prefix it with @ -- as in "@0:OVERWRITTEN,P". The Commodore monitor uses the Kernal for all its I/O, so whatever the kernal would support, the monitor also would support.
It's been so long, though, i can't remember any specific details. But, I seem to recall that mats is correct.
HOWEVER, . . .
I believe the Commodore 128's monitor uses the "FILENAME",device,start,end syntax (I'm currently at work, so I cannot verify). This leads me to believe that there might have been two distinct versions of the monitor in circulation.
I dunno -- I only work here... ;D
I seem to recall the command ordering as:
S device, "FILENAME", start, end
Yes, the device came first. And yes, device 8 was recognized as the disk device (dual drive unit, so filenames had to use 0: or 1: in their prefix). To overwrite a file, you also had to prefix it with @ -- as in "@0:OVERWRITTEN,P". The Commodore monitor uses the Kernal for all its I/O, so whatever the kernal would support, the monitor also would support.
It's been so long, though, i can't remember any specific details. But, I seem to recall that mats is correct.
HOWEVER, . . .
I believe the Commodore 128's monitor uses the "FILENAME",device,start,end syntax (I'm currently at work, so I cannot verify). This leads me to believe that there might have been two distinct versions of the monitor in circulation.
I dunno -- I only work here... ;D