asm-1

ZXNet echo conference «code.zx»

From Eugene Palenock To All 25 February 2001

Hello All! I wrote this for some reason... ;) It only works on GRM, because it uses the output point in port at 3C30 and 3C33. And it also works for those who installed my TRDOS 5.04F This procedure has no practical benefit. it has, but it just works beautifully ;) ORG #8000.0 D.I. LD HL,#3C30 CALL DREAD CP#DB JR NZ,ERROR LD HL,#3C33 CALL DREAD CP#D3 JR Z,EP05 LD HL,DOUT1F_ LD (DS1),HL LD (DS2),HL LD (DS3),HL LD (DS4),HL EP05 CALL TRK00 CALL TRK84 CALL DSTOP EP19 RET LD A,2 OUT(#FE),A JR EP21 EP21 CALL EP20 LD A,4 OUT(#FE),A CALL EP20 JR EP19 EP20 LD B,#72 ;MULTICOLOR ;-) EP22 DJNZ EP22 ; LD A,0 IN A,(#FE) XOR A RET NC ERROR LD A,2 CALL #1601 LD DE,TEXT XOR A CALL #C0A JR EP19 TEXT (SP) #80,#16,0,0,#11,0,#10,7 (SP) "Sorry, only for TR-DOS of GRM",#80+#20 ; ; 'SYNCHRONOUS' MOVE ALL HEADS TO 84 TRACK ; TRK84 LD B,83 ; NUMBER OF TRACKS - 1 LD C,#FF ;SYSTEM PORTLD D,#48 ;TEAM 'STEP FORWARD' L_STEP LD A,#4C+3 CALL DOUT LD A,D CALL DOUT1F DS1 EQU$-2 LD A,#4C+2 CALL DOUT LD A,D CALL DOUT1F DS2 EQU$-2 LD A,#4C+1 CALL DOUT LD A,D CALL DOUT1F DS3 EQU$-2 LD A,#4C+0 CALL DOUT LD A,D CALL DOUT1F DS4 EQU$-2 DJNZ L_STEP RET ; ; TO STOP THE ENGINE - STEP WITH HEAD RAISED AND ; INTERRUPTION IMMEDIATELY. ; DSTOP LD C,#1F LD A,#60 CALL DOUT LD A,#D0 JP DOUT ; ; 'SYNCHRONOUS' MOVE TO TRACK 0 ; TRK00 LD DE,#580F NER BIT 3,E JR Z,NE02 LD C,#FF LD A,#4C+3 CALL DOUT LD C,#1F LD A,#68 CALL DOUT N30 CALL DIN1F RRA JP C,N30 RRA RRA JP NC,NE02 RES 3,E NE02 BIT 2,E JR Z,NE01 LD C,#FF LD A,#4C+2 CALL DOUT LD C,#1F LD A,#68 CALL DOUT N20 CALL DIN1F RRA JP C,N20 RRA RRA JP NC,NE01 RES 2,E NE01 BIT 1,EJR Z,NE00 LD C,#FF LD A,#4C+1 CALL DOUT LD C,#1F LD A,#68 CALL DOUT N10 CALL DIN1F RRA JP C,N10 RRA RRA JP NC,NE00 RES 1,E NE00 BIT 0,E JR Z,NE LD C,#FF LD A,#4C+0 CALL DOUT LD C,#1F LD A,#68 CALL DOUT N00 CALL DIN1F RRA JP C,N00 RRA RRA JP NC,NE RES 0,E NE LD A,#F AND E RET Z DEC D JP NZ,NER RET DOUT LD HL,#2A53 PUSH HL JP #3D30 DIN1F LD HL,#3C30 PUSH HL JP #3D30 DOUT1F LD HL,#3C33 PUSH HL JP #3D30 DREAD LD DE,#207 PUSH DE LD A,#FF AND A JP #3D30 DOUT1F_ LD C,#1F CALL DOUT DT1F_1 CALL DIN1F RRA JP C,DT1F_1 LD C,#FF RET NOP END NOP * Оригинал написан в ZX.SPECTRUM * Скопировано в CODE.ZX С уважением, Евгений.