LD IX,VEGE ;FELHASZNALT MEMORIA CIME LD C,0EFH ;KARTYAK KERESESE EF PORTTOLPDET CALL PDETECT EI CALL Z,PORT ;HA TALALT, AKKOR LETAROLJUK DEC C BIT 1,C JR NZ,NEMZ ;KET PARANCS PORT UTAN DEC C ;A KET ADAT PORTOT DEC C ;KIHAGYJUKNEMZ BIT 4,C JR Z,PDET ;DF-NEL VEGE LD (IX),0 ;PORT LISTA LEZARASA LD (IX+1),55H
PDETECT: LD B,11110000B DIPDETC OUT (C),B IN A,(C) OR 11110000B XOR B RET NZ INC B JR NZ,PDETC RET
RD equ 32 ;OLVASASWR equ 16 ;IRASDATA equ 0 ;DATAERROR equ 2 ;ERRORPREC equ 2 ;PRECOMPENSATIONFEAT equ 2 ;FEATURESSC equ 1 ;SECTOR COUNTSN equ 3 ;SECTOR NUMBERCLO equ 4 ;CYLINDER LOWCHI equ 6 ;CYLINDER HIGHDRH equ 5 ;DRIVE/HEAD SELECTSTAT equ 7 ;STATUSCOM equ 7 ;COMMANDASTAT equ 13 ;ALTERNATE STATUSDCON equ 13 ;DEVICE CONTROLDADR equ 15 ;DRIVE ADDRESS
LD C,0ECH ;adatport alsó 8 bit OUT (C),L INC C ; adatport felső 8 bit OUT (C),H LD A,WR+DATA ;írás művelet+a regiszter cime LD C,0EFH ;parancsport OUT (C),A OR WR+RD ;irás+olvasás bitek visszaállítása 1-re OUT (C),A
LD A,RD+DATA ;olvasás művelet+a regiszter cime LD C,0EFH ;parancsport OUT (C),A OR WR+RD ;irás+olvasás bitek visszaállítása 1-re OUT (C),A LD C,0ECH ;adatport alsó 8 bit IN L,(C) INC C ; adatport felső 8 bit IN H,(C)