Jump to content
IGNORED

How can I test a 1050 drive?


AtariLeaf

Recommended Posts

I've got 3 of these drives but I don't have any Atari disks to test them with. Now, I've got a bunch of blank 5 1/4 disks laying around that I use for my old 486. Can I take one of these and format it in the 1050? If so, what are the commands to do so or the steps I need to take to format a disk.

 

Thanks

Link to comment
Share on other sites

You need Dos from an Atari disk to use the drives. But you can used this program in a pinch (if you can't get a Dos disk anywhere). It's in 3 sections...a loader, a formatter, and a saver (you need to use the format part before you can use the save part). If you want, you only need type in the lines of the section needed and then GOTO it. Since it uses high line numbers, it can be tacked onto programs you've made so you can save them to disk without Dos. In any case, you will be able to see if they work at all ;) This is also a handy program to keep on cassette just in case Dos becomes corrupt...so if you have a 410 cassette recorder, you can type LIST "C:" to save it to a tape. Use ENTER "C:" to load it back in. It won't overwrite a program in memory that way (so long as the line numbers of the program that you make are lower).

 

 

32741 GRAPHICS 0:CLR : DIM A$(1): ? : ? "NoDOS/RELOADER:": ? "Insert disk in drive 1";:TRAP 32741

 

32742 INPUT A$:BUF=1536:SEC=719:I=128:POKE 82,0:POKE 83,39

 

32743 POKE 842,12:L=0: ? "{CLEAR}{TAB}HIT ANY KEY TO ABORT{DOWN}":POKE 766,1

 

32744 GOSUB 32749: ? CHR$(D);:L=L+1:IF D=155 THEN 32747

 

32745 IF PEEK(764)=255 THEN 32744

 

32746 POKE 82,0:POKE 766,0:POKE 764,255:END

 

32747 POKE 766,0:IF L=1 THEN POKE 82,2:END

 

32748 ? "{DOWN}G.32743":POKE 842,13:POSITION 0,0:STOP

 

32749 IF I=128 THEN GOSUB 32751

 

32750 D=PEEK(BUF+I):I=I+1:RETURN

 

32751 POKE 768,49:POKE 769,1:POKE 770,82:POKE 771,64:POKE 772,ASC(CHR$(BUF)):POKE 773,INT(BUF/256):POKE 776,128

 

32752 POKE 777,0:POKE 778,ASC(CHR$(SEC)):POKE 779,INT(SEC/256) : D=USR(ADR("hLY{INVERSE d}")):SEC=SEC-1:I=0:RETURN

 

32755 ? : ? "NoDOS/FORMAT: drive #1.": ? "Enter 'Y' when ready ";:CLR : DIM A$(1):INPUT A$

 

32756 IF A$<>"Y" THEN 32760

 

32757 POKE 768,49:POKE 769,1:POKE 770,33:POKE 771,0:POKE 774,255 : D=USR(ADR("hLY{INVERSE d}"))

 

32760 ? : ? "NoDOS/SAVER: Hit RETURN to start ";:CLR : DIM B$(255),A$(127):INPUT A$:TRAP 40000:CLOSE #1:POKE 82,0

 

32761 POKE 83,39:BUF=ADR(B$):I=1:SEC=719:OPEN #1,13,0,"E:":POKE 752,1:POKE 559,0:A=PEEK(136)+256*PEEK(137)

 

32762 ? "{CLEAR}";:L=PEEK(A)+256*PEEK(A+1):LIST L:POSITION 0,1:INPUT #1,A$:A$(LEN(A$)+1)=CHR$(155)

 

32763 B$(I)=A$:I=LEN(B$)+1:A=A+PEEK(A+2):IF L<32739 AND I<=128 THEN 32762

 

32764 IF I>128 THEN GOSUB 32766:B$(I)="#":B$=B$(129):I=LEN(B$):B$(I)="":IF PEEK(771)=1 AND L<32739 THEN 32762

 

32765 B$(129)="#":B$(I)=CHR$(155):B$(I+1)=B$(I):GOSUB 32766:POKE 82,2:GRAPHICS 0: ? "{BELL}STATUS - ";PEEK(771):END

 

32766 POKE 768,49:POKE 769,1:POKE 770,87:POKE 771,128:POKE 772,ASC(CHR$(BUF)):POKE 773,INT(BUF/256)

 

32767 POKE 766,128:POKE 777,0:POKE 778,ASC(CHR$(SEC)):POKE 779,INT(SEC/256) : D=USR(ADR("hLY{INVERSE d}")):SEC=SEC-1:RETURN

 

Be warned...this is a very destructive program. Use with caution. Enter the {bracketed} commands by using the ESC key+the key indicated, or the LOGO key (to make those inverse lower-case d's in the USR commands).

 

Notes from the author Emmanuel Gendrano:

If you wish to save your program to a formatted disk, you only need to type or ENTER lines 32760-32767. If you also need to format before saving, you must type or ENTER lines 32755-32767. Type GOTO 32760 or GOTO 32755 to start. The routine will blank out the screen to gain a little speed as it saves, and tries to be non-destructive by writing downward from sector 719 (in case the disk contains Dos files)...but it's best to use a blank disk since it will not check if there is data already present on the sectors that it overwrites. If the save was successful, turn off the computer and reboot with Dos. You will not see the file in the Dos directory, since it is not written in Dos format. To convert it into a file that Dos can see, type or ENTER the reloader routine (lines 32741-32752). GOTO 32741 to start, and you will see each line on-screen as they are restored to memory. When it's done, you should erase the reloader lines and immediately save it using the Dos SAVE command.

If you get consistant errors during the save routine, the drive head may be misaligned. There is a possible fix for this by editing the routines to write upward from sector 1. Note that this MUST be done with an expendable disk...since it's certian to wipe out the boot sectors and first files on the disk. Simply change the SEC=719 statements to SEC=1 at lines 32742 and 32761, and the SEC=SEC-1 statements to SEC=SEC+1 at lines 32752 and 32767.

The program can also be modified to work with double-density disks. Change the last and first POKE statements at line 32751-32752 to POKE 776,0 and POKE 777,1. Depending on your drive, you may also need to change the same POKE statements at the reloading routine's line 32767.

  • Like 1
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...