

%BEGIN

     %CONSTBYTEINTEGERNAME ID = K'160030'
     %CONSTINTEGERNAME NULLI=0

     %CONSTINTEGER DREAD=0, DWRITE=1
     %RECORDFORMAT PF(%BYTEINTEGER SERVICE, REPLY, %INTEGER A1, %C
       %INTEGERNAME A2, %INTEGER A3)

     %INTEGER I, J, K, L, M, DRIVE
     %RECORD (PF)P
     %INTEGERARRAY BUFF(0:256)



PROMPT('Copies Floppy Bootstrap Block Unit 0 to Unit 1
PLEASE CONFIRM?')
READSYMBOL(I)
DRIVE=K'020000';  ! UNIT ONE
%IF I#'Y' %THEN %STOP
P_SERVICE=3; P_REPLY = ID
P_A1=0; P_A2==NULLI
PONOFF(P)
%IF P_A1#9 %START
PRINTSTRING('DISC TURN OFF CHECK ERROR '); WRITE(P_A1, 1); NEWLINE
%STOP
%FINISH
P_SERVICE=3; P_REPLY=ID
P_A1=0; P_A2==NULLI
P_A3=K'020000'
PONOFF(P)
%IF P_A1#9 %START
   PRINTSTRING("UPPER CHECK FAILS
")
   %STOP
%FINISH
%CYCLE I = 0, 1, 13
P_SERVICE=3; P_REPLY=ID
P_A1=DREAD;     ! READ ONE BLOCK
P_A2==BUFF(0)
P_A3=I; ! BLOCK
PONOFF(P)
%IF P_A1#0 %START
PRINTSTRING('DISC ERROR
')
%STOP
%FINISH
P_A2==BUFF(0)
P_A1=DWRITE
P_A3=I!DRIVE
P_SERVICE=3; P_REPLY=ID
PONOFF(P)
%IF P_A1#0 %START
PRINTSTRING('DISC WRITE ERROR
')
%STOP
%FINISH
%REPEAT
%ENDOFPROGRAM
