Jump to content
IGNORED

ATR-8000 (and other) CP/M System disks here


Kyle22

Recommended Posts

Those with a working ATR8000 and a floppy mech connected, can you please try this file. Rename from atr.TXT to atr.EXE.

Use what ever means to load and run it from a floppy or device other then 1. Have the ATR8000 connected floppy drive as D1.

Insert a blank formatted floppy into the ATR DD prefered. Then run this program.

 

What does it do?

This uploads a slightly modified version of DDSYSGEN with an attached CP/M system ready to write out to a floppy, to the ATR8000 and then runs it. As mine doesn't want to format disks properly, it starts to format then errors out, meaning that something is working.

It is very rough with no error checking what so ever and the atari end ends in a loop so reset will need to be pressed. The atr appears to end with a reset but it is advised to press reset anyway, just in case

 

If it works, you should have a bootable CPM system with no files however.

 

Please advise on the results.

 

James

atr.txt

  • Like 1
Link to comment
Share on other sites

Congratulations James, you nailed it!

 

A word of warning to someone who may find an ATR8k in their grandparents attic in 2029; most if not all of the files on the .TD0 images seem to be broken. If no one beats me to it, I will see if I can put together a .TD0 of good files in the next couple of days. I'm pretty sure the files in the ATR .ZIP are OK. If not, I have a collection of CP/M disks with good files on them.

 

I followed your instructions as close as I could. I shut off the ATR8k and used SIO2PC as D1: to boot my Atari. Once booted I switched SIO2PC to D2: and turned on the ATR8k with a 360k floppy mechanism jumpered as D1:. I ran ATR.EXE from D2:<SIO2PC>. After the file loaded it started making those squeeking noises you hear while talking to the ATR8k, same ones as ATARMOM.BAS makes. Soon as it finished, the Atari hung and the ATR8K spun up on track 0, stepped out to track 1, then stopped spinning but the drive activity light stayed on. I had to shut down everything and reboot.

 

I used SIO2PC with AUTOTERM.ATR as D1: to boot to the Atari in terminal mode. Switched the SIO2PC drive out to D2: and turned on the ATR8k. From there, I just hit return a couple of times and got the

ATARIMON

#

prompt. From there, just typed B<return> and everything was up and running.

 

I made a .TD0 copy of that disk with Teledisk. Teledisk was pissing an moaning as it made the copy but it works fine as far as I can tell. IMNSHO: This is great since it looks like there are now two ways to get an ATR8k boot disk. It could be useful for someone who just has an ATR8k w/o an Atari and just wants to run CP/M off a terminal.

 

Kind of makes me wonder if you could run ROGUE.COM for CP/M just using an Atari w/o a disk attached to the ATR8k! :)

post-35434-0-66697400-1400339929_thumb.jpg

Edited by ricortes
Link to comment
Share on other sites

Those with a working ATR8000 and a floppy mech connected, can you please try this file. Rename from atr.TXT to atr.EXE.

Use what ever means to load and run it from a floppy or device other then 1. Have the ATR8000 connected floppy drive as D1.

Insert a blank formatted floppy into the ATR DD prefered. Then run this program.

 

What does it do?

This uploads a slightly modified version of DDSYSGEN with an attached CP/M system ready to write out to a floppy, to the ATR8000 and then runs it. As mine doesn't want to format disks properly, it starts to format then errors out, meaning that something is working.

It is very rough with no error checking what so ever and the atari end ends in a loop so reset will need to be pressed. The atr appears to end with a reset but it is advised to press reset anyway, just in case

 

If it works, you should have a bootable CPM system with no files however.

 

Please advise on the results.

 

James

Worked for me as well.

 

Thanks, James and Rick!

 

-SteveS

Link to comment
Share on other sites

Just one more comment. I have spent some time with .TD0 disks in various schemes with limited success in getting files over.

 

1) Making Teledisk images from the archives and using ATR.EXE to write the boot code to the system area.

 

2) Formatting ATR8000 disks under 22DISK, using ATR.EXE to write the boot code, then 22DISK to move CP/M files over.

 

3) Just formatting various CP/M disks with 22DISK, I have gone from ABC to Cromeco, moving text files to it, and trying to 'TYPE' them on an ATR8k.

 

Most of the txt type files seem to break after ~128-512 bytes. I haven't been able to pin it down yet. Usually it looks like some form of blank in the file i.e. in a 2k file there will be something like 512 bytes of the text followed by 512 bytes of $E3 followed by 512 bytes of text. Probably just something simple like the drive definition tables are off. I'll keep at it but son in law is coming over in a few minutes and my chickens need a coup built for them!

Link to comment
Share on other sites

Here is the .PRN file from the MS Macro Assember for the ATR8000 ROM. I *THINK* I have it right but don't be surprised if I ask a moderator to delete it for being wrong. What it gives is all the routines and memory locations with labels. I had to do some monkeying around, as distributed in the archives, it produced ~25 errors on assembly. I'm still not sure why, they could have used two different assemblers or something.

 

This is kind of hard core. If you find fishing w/o a hook or levitation too easy, you may want to take a look at it. :)

atr8kbos.zip

Link to comment
Share on other sites

Is good to see it works. Now to do a lot of tidy up. It will be harder on the atr end tho.

 

Next thing which will be harder is to format a full disk and create the data area with all the files on the ATR. Dinit makes calls into CP/M for disk stuff. Need to figure what they do.

 

James.

Link to comment
Share on other sites

Is good to see it works. Now to do a lot of tidy up. It will be harder on the atr end tho.

 

Next thing which will be harder is to format a full disk and create the data area with all the files on the ATR. Dinit makes calls into CP/M for disk stuff. Need to figure what they do.

 

James.

Fiddling with logical drive assigments for my SDrive added extra steps to your procedure. I got the sequence wrong enough times that I decided to whip up an Atarimax cart with your ATR.XEX and Claus Bucholz's DT80.

 

This was convenient for testing but now I'm wondering, would it be possible to inject CP/M into the ATR8000 and go live? No disk at all.

 

-SteveS

Link to comment
Share on other sites

Fiddling with logical drive assigments for my SDrive added extra steps to your procedure. I got the sequence wrong enough times that I decided to whip up an Atarimax cart with your ATR.XEX and Claus Bucholz's DT80.

 

This was convenient for testing but now I'm wondering, would it be possible to inject CP/M into the ATR8000 and go live? No disk at all.

 

-SteveS

 

It is possible with the limitation it wouldn't play into CP/M strengths. Vague memories from the days, CP/M was disk based OS and file control. Just about every program for CP/M has some type of file save, file load, disk format, ... function. Just an opinion; I can't see running Word Star that way. That also assumes you would want to run Word Star. Ditto for all the development tools like the ones mentioned above. Macro 80 and Link 80 are really file based assembler and linker. You could get the prompt, but you wouldn't be able to give it a file to operate on. I think we are talking about the same thing.

 

There's a couple of odd programs that ran from memory that would be of interest mostly from a historical perspective. ROGUE could probably load and go w/o a save game. You could do run MBASIC and load files stored on the Atari. Pretty hard core dose of nostalgia. Not really something anyone has to do. There's some cheap simulated floppies for sale on fleabay. They seem to run $20-$100 and Lotharek has some nice ones. http://www.lotharek.pl/product.php?pid=13 I'm not too worried about lack of real floppies since I'd bet one of these would work.

 

I did just have an insight. Something for me to try is hooking up two drives with a little more vanilla of a disk in B: The ATR8k determines what each disk hooked to it is on reset. Even if the A: drive is having trouble picking up files, the B: drive may work. I got'ta make a cable.

Link to comment
Share on other sites

Here is a new file that should play a bit nicer both ends. As usual, change TXT to EXE.

On the ATR, if there is success in writing the system tracks, it should exit ok and you should then be able to run the monintor and do a boot without pressing reset.

If it fails to make system tracks, the atr should reset thus giving a type of feedback. It does this on mine.

 

The atari end pauses and return to dos.

 

It should be possible to put CPM direct onto the atr, but then you need to run a monintor etc so more work on the atari end is required, then you need files on a floppy to do anything.

 

If someone could format a 256 byte sector disk on the ATR8000 using DINIT then copy all the ATR8000 files to that without making system tracks, then you should be able to make an atr file of that on any DD drive so that anyone can have the ATR8000 files and be easily distributed. There is more then one disk in the teledisk archive so doing each to 256 byte sectors should be done if they are readable and the sectors are in the right order.

 

The ATR8K484 CPM starts at $D200. does anyone want this done as well?

What about the earlier version?

 

James

atr.txt

Link to comment
Share on other sites

Some experiments

 

Tested the older ATR.XEX with 1.2MB FDD - works

 

In CP/M tried to copy files from B: to A: via PIP but there's no space available on A:

 

using DDINIT from B: I reformatted A: which of course renders it non-bootable. I then used ATR.XEX again to laydown system tracks on the diskette. now there was space available on A: to copy the files from B:

 

So we can get the job done if we have a usuable data disk with the files AND we have a two disk system.

 

Third experiment. I already formated a generic disk, 256bps, 18spt, and copied the files over to it. Now I need to attempt to make an ATR from this and also attempt to reverse the process. I assume we need to do data bit inversions somewhere along the process..

 

-SteveS

Edited by a8isa1
Link to comment
Share on other sites

Tested the older ATR.XEX with 1.2MB FDD - works

 

I assume we need to do data bit inversions somewhere along the process..

 

-SteveS

Part of DDsysgen program is to read the idmark of the disk inserted. That is why a formatted disk is best to use. DDSYSGEN allows for the larger disks. tho it still only uses 9 or 10 sectors on each track.

 

 

No bit inversion required. The atr file will be done from the atari side. Every drive will invert the bits while reading the disk before sending it to the atari. The reverse will happen when writing.

 

The disk you made. was it single or double sided? Different drives handle the 2nd side differently. The XF551 steps from track 40 to 1 on the 2nd side. I believe the ATR8000 when reading atari disks steps from 1 to 40 on the 2nd side. (i think).

 

A ATR8000 cpm disk would need to be made in this order.

Make a disk from an atr file, then write the system tracks using my file.

 

James

Edited by sup8pdct
Link to comment
Share on other sites

Part of DDsysgen program is to read the idmark of the disk inserted. That is why a formatted disk is best to use. DDSYSGEN allows for the larger disks. tho it still only uses 9 or 10 sectors on each track.

 

 

No bit inversion required. The atr file will be done from the atari side. Every drive will invert the bits while reading the disk before sending it to the atari. The reverse will happen when writing.

 

The disk you made. was it single or double sided? Different drives handle the 2nd side differently. The XF551 steps from track 40 to 1 on the 2nd side. I believe the ATR8000 when reading atari disks steps from 1 to 40 on the 2nd side. (i think).

 

A ATR8000 cpm disk would need to be made in this order.

Make a disk from an atr file, then write the system tracks using my file.

 

James

I realized the drives would re-invert the bits only later after I wrote my message

 

I have double side drives connected to the ATR8000 ATM. I also have 1.2MB HD and single sided 180K drives. No 3.5" drives, at least not any 720K 3.5" drives.

 

I've been formatting disks single sided on the Atari. I'm finding most of my disks, all old and most reused, have one or more bad sectors. I managed to find a few good disks and had some success creating readable data disks on the CP/M side. I just found my orignal CP/M disk for the ATR8000 so now I can be sure I'll have all the original files on my .ATR.

 

My system disk is version 2.2 but it's dated Mar-1982 while yours is dated April-1984. Would this cause an issue? Your disk might have updated Diskdefs.

Link to comment
Share on other sites

The two drive thing worked better then expected. Once again, not much sleep so I think it went down something like this. I was still using Jame's original disk created with his first ATR.EXE in drive A: with the ATR8K484.TD0 created disk in B: when I did my SIO2PC + ATR8k boot. Drive B: came up perfectly and I ran the disk configure program from there. Told it A: was SSDD in the process. Rebooted and A: was fully working too. PIP'd everything over from B: and everything runs from A: like it should. I did take a look at Jame's first disk with ANADISK and first track is just odd with the one short sector but track 1 is just as nuts as the other .TD0s: 110 sector type errors. But it boots fine so.... I haven't looked at the 2nd ATR.EXE fully.

 

Made a bunch of data disks anyway.

 

What I have noticed and the only thing that still seems a problem is 80 column output! I do a directory and everything is cut off! Twenty five files on the disk and I can only see about half of them completely. It's pretty critical on some programs as you can't follow the prompts and occasionally I am getting a lot of screen garbage. So, I have to find what I did with my OMNIVIEW OS ROM. I tried using some other programs like FLASH80 and couldn't get them working with the AUTOTERM program. OMNIVIEW was kind of special, had built in 80 column screen and was designed to work with CP/M. Just some odd stuff to get it started, couple of resets with select key held down, maybe a jump to initialize it. I'll buy a couple of EPROMs so I can make a dual OS hack with a few spares for others.

 

Time for a swim, a movie, and a brewski!

Link to comment
Share on other sites

The two drive thing worked better then expected. Once again, not much sleep so I think it went down something like this. I was still using Jame's original disk created with his first ATR.EXE in drive A: with the ATR8K484.TD0 created disk in B: when I did my SIO2PC + ATR8k boot. Drive B: came up perfectly and I ran the disk configure program from there. Told it A: was SSDD in the process. Rebooted and A: was fully working too. PIP'd everything over from B: and everything runs from A: like it should. I did take a look at Jame's first disk with ANADISK and first track is just odd with the one short sector but track 1 is just as nuts as the other .TD0s: 110 sector type errors. But it boots fine so.... I haven't looked at the 2nd ATR.EXE fully.

 

Made a bunch of data disks anyway.

 

What I have noticed and the only thing that still seems a problem is 80 column output! I do a directory and everything is cut off! Twenty five files on the disk and I can only see about half of them completely. It's pretty critical on some programs as you can't follow the prompts and occasionally I am getting a lot of screen garbage. So, I have to find what I did with my OMNIVIEW OS ROM. I tried using some other programs like FLASH80 and couldn't get them working with the AUTOTERM program. OMNIVIEW was kind of special, had built in 80 column screen and was designed to work with CP/M. Just some odd stuff to get it started, couple of resets with select key held down, maybe a jump to initialize it. I'll buy a couple of EPROMs so I can make a dual OS hack with a few spares for others.

 

Time for a swim, a movie, and a brewski!

If you can burn your own EPROMs I recommend using a 27512 for quad OS, Dropcheck offers a $15 4in1 OS adapter for connecting it to the XL/XE OS socket. If you want to use original ROMs she also offers a $35 reproduction of the RAMROD XL adapter for switching between 3 OS ROMs.

 

http://www.bitsofthepast.com/?post_type=product

Link to comment
Share on other sites

My system disk is version 2.2 but it's dated Mar-1982 while yours is dated April-1984. Would this cause an issue? Your disk might have updated Diskdefs.

Yes. Several files are different but more importantly, the BIOS written by swp is different. I have attached a text file that explains a few things.

 

James

NEWS.DOC

Link to comment
Share on other sites

Yes. Several files are different but more importantly, the BIOS written by swp is different. I have attached a text file that explains a few things.

 

James

This might explain an issue I was having generating data disks.

 

My first attempt went well but my next few attempts generated disks that were corrupted. I could read the directories but at the end there wee many entries like this, ': . : ', (or something like that).

 

Eventually it occured to me that it had to be my disks that had data on both sides which was causing problems, even disks which I had reformatted single sided

 

After this I started bulk erasing my disks before formatting single side and haven't had any problems since.

 

I'm wondering if I have an intermediate version of the BIOS. The document you provided mentions that one of the fixes was producing an error message when a non-system disk is inserted into A: drive instead of loading garbage into memory. I get an error message in such a situation.

 

I didn't see anything mentioned on how to identify which version of the BIOS one's ATR8000 might contain. Do you have any ideas how I might determine this?

 

-SteveS

Link to comment
Share on other sites

I was taking a look at the BIOS the other night and noticed a line or two on checking disk type had been commented out. Far from an expert on Z80, it made me worry because I thought it should have been left in. This would be stuff that we are used to; in the attempt to fix one bug a new one was introduced.

 

Anyway, try typing C<CONTROL> every time you switch a disk. That should force the bios to reread the disk configuration. I'm not positive, but since the AUTOTERM mode traps reset, you should be able to try hitting reset on the Atari followed by RETURN to keep CP/M working on the ATR8k and freshen everything up. I don't know that either of these works, just a guess.

 

The Atari 8 bit was a superior design to CP/M in that the first thing the drive does is check what the disk is when you insert it. There is no such provision on the ATR8k AFAIK. Working with CP/M back then was pretty restrictive. I think that is why they included CONFIG.COM in the distribution: It would let you set up all the parameters of the system from BAUD to printer and disk types. You may have noticed things like disks being labeled "DRIVE B:" on old floppies. Wasn't just for setting up a BBS with a known configuration, more to avoid tragedy like you are experiencing. :) You would set up a system to autoboot Wordstar and plunk a secretary down in front of it. Start of the day she would insert disks and boot up. End of the day she would take them out and lock them up. We actually had log books where you had to check out floppies from IT and they would oversee everything. Of course we would bring our own floppies in to circumvent the system.

 

Kind of funny in that earlier in this thread I complained about DOS DEBUG being too good at determining what disk was inserted. Made it near impossible to modify the first sector on a disk more then the first time.

Link to comment
Share on other sites

There is a difference when you first see CP/M boot.

 

*****************************
** 60K CP/M version 2.2 **
** for ATR8000 31-Mar-82 **
*****************************
early


*****************************
** CP/M version 2.2 **
** for ATR8000 27-April-84 **
*****************************

Latest

 

James

Link to comment
Share on other sites

There is a difference when you first see CP/M boot.

 

*****************************

** 60K CP/M version 2.2 **

** for ATR8000 31-Mar-82 **

*****************************

early

 

 

*****************************

** CP/M version 2.2 **

** for ATR8000 27-April-84 **

*****************************

Latest

 

James

Oh, I thought there was also a ROM update.

 

I get the later date when I use disks built with your utility and the older date when I use my disks.

 

-SteveS

Edited by a8isa1
Link to comment
Share on other sites

I have hand assembled this CPM disk with some files on it. No idea if this will work.

 

Just disk copy the atr to a real floppy on a DD drive and make sure it is single sided . Wipe the disk before you format and write this out.

 

Am hoping the CPM files will load and work ok.

They are DDSYSGEN for the latest version only (27-april-1984).

DDINIT to format disks

SYSTEM.SWP that DDSYSGEN can use if asked to.

 

Feedback please.

 

James

cpmtest1.atr

Link to comment
Share on other sites

The online sources say there was a ROM update. You should be able to lift the hood and the EPROM will have a label on it that shows version 3.02 which is the latest. They handed out ROMs to anyone who had an early

http://www.atarimagazines.com/v2n4/productreviews.html

 

Assuming the files in the early production ROMs are labeled i.e. minimon.mac.orig in the source distribution, you would still have the D[ump] command. Just boot to the ATRMON prompt and type DF000<return>, if you get 128 bytes of data dumped to the screen, you have the original ROM. If it just ignores you, you have the latest.

 

My serial number, on the back by the 34 contact edge connector, is 001464 which makes me wonder if they started counting from zero. That would mean a lot more ATR8k out in the wild then I would have thought. Mine also has a little green circle sticker on it with '16' on it => inspector 16? Trivial fix if anyone needs an update ROM since I can burn them a new one.

Edited by ricortes
Link to comment
Share on other sites

Still struggling with z80 assembly. This code appears in ATARI.MAC file.
**************************************
;
;
; ... PRINTER STATUS COMMAND PROCESSOR ...
;
PTRSTAT:
CALL SENDACK
LD HL,PSMSG
LD DE,IOBUFF+LEN-4
PUSH DE
LD BC,4
LDIR ;COPY PRINTER STATUS FRAME FROM RAM
POP HL
LD DE,'C' ;SEND PRINTER STATUS UN-INVERTED
JP SENDBUFF
; ret
;
;
; ... PRINTER WRITE COMMAND PROCESSOR ...
;
PTRWRITE:
CALL SENDACK ;SEND 'ACK' FOR COMMAND FRAME
CALL RECVBUFF ;GET PRINT DATA FROM SERIAL BUS
RET NZ ;EXIT IF ERROR OR TIMEOUT
*******************************

Not sure if commenting out the

; ret

is a mistake or the coder trying to save a couple of bytes by having the routine run through to PTRWRITE and hit the RET there.

 

This code is only reached if you have a serial printer hooked up to the ATR8k and the system configured as such. Considering the comments on the rest of the code, a little odd that it would be done and not explained.

Link to comment
Share on other sites

The online sources say there was a ROM update. You should be able to lift the hood and the EPROM will have a label on it that shows version 3.02 which is the latest. They handed out ROMs to anyone who had an early

http://www.atarimagazines.com/v2n4/productreviews.html

 

Assuming the files in the early production ROMs are labeled i.e. minimon.mac.orig in the source distribution, you would still have the D[ump] command. Just boot to the ATRMON prompt and type DF000<return>, if you get 128 bytes of data dumped to the screen, you have the original ROM. If it just ignores you, you have the latest.

 

My serial number, on the back by the 34 contact edge connector, is 001464 which makes me wonder if they started counting from zero. That would mean a lot more ATR8k out in the wild then I would have thought. Mine also has a little green circle sticker on it with '16' on it => inspector 16? Trivial fix if anyone needs an update ROM since I can burn them a new one.

Maybe the green circle '16' refers to the 16K model, while the 64K model would have a different sticker, for quick identification while still at SWP.

Link to comment
Share on other sites

My serial number, on the back by the 34 contact edge connector, is 001464 which makes me wonder if they started counting from zero. That would mean a lot more ATR8k out in the wild then I would have thought. Mine also has a little green circle sticker on it with '16' on it => inspector 16? Trivial fix if anyone needs an update ROM since I can burn them a new one.

My serial number is 000130, I'll pull the rom in a few hours and see if I have the older version...

Hope to have mine back up and going tonight :)

Link to comment
Share on other sites

Mine stated "64" yellow sticker. So it is 64 K. So must I uncover my 360K XF551 disk drive and plug the ribbon cable and hook up to the back of my ATR8000 and will it works ? Of course, I will leave the power source inside XF551 that still hook-up to internal drive itself. The serial number 000297.

Edited by Caterpiggle
Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...