DataMuseum.dkPresents historical artifacts from the history of: CR80 Hard and Floppy Disks |
This is an automatic "excavation" of a thematic subset of
See our Wiki for more about CR80 Hard and Floppy Disks Excavated with: AutoArchaeologist - Free & Open Source Software. |
top - download
Length: 1436 (0x59c) Types: TextFile Names: »TPROM.SRC«
└─⟦519079be6⟧ Bits:30005500 8" CR80 Floppy CR80FD_0029 ( WBOOTL.SYS W.D bootload program 81 10 01 ??? ) └─⟦519079be6⟧ Intel_ISIS_II └─ ⟦this⟧ »TPROM.SRC«
;*****************************************************************************\r TITLE 'PROM TEST ROUTINE'\r NAME TPROM\r ;*****************************************************************************\r \r PUBLIC TPROM,CHESUM,CHEADJ\r EXTRN ERROR\r CSEG\r \r ;-------PROM TEST---------------------------------------TPROM------------------\r ;DESCRIP: THE ROUTINE TEST THE PROM BY CALCULATE THE CHECKSUM\r ; THE CHECKSUM MUST BE ADJUSTED TO 00H IF PROGRAM\r ; IS LOCATED INTO PROM.\r TPROM LD DE,0 ;LOAD PROM START ADDRESS\r LD HL,PROMEND ;LOAD PROM END ADDRESS\r CALL CHESUM\r AND A\r RET Z ;RETURN IF CHECKSUM = 0\r CPL\r LD HL,CHEADJ\r LD E,A\r LD A,0FFH\r CP (HL)\r JR NZ,T1ERROR ;JUMP IF CHECKSUM ALREADY ADJUSTED\r LD A,E\r LD (HL),A ;ADJUST CHECKSUM\r CP (HL)\r T1ERROR LD A,1\r CALL NZ,ERROR ;JUMP IF READ/WRITE ERROR\r JP TPROM\r \r \r \r ;-------CHECKSUM------------------------------------------------CHESUM-------\r ;DESCRIPT: CALCULATE CHECKSUM FOR SPECIFEID PROM.\r ;ENTRY: DE - FIRST PROM ADDRESS\r ; HL - LAST PROM ADDRESS\r ;EXIT: A - CHECKSUM\r ;DESTROY: F,DE,HL\r ;TIME: 47+27*BYTE COUNT TCYCLES\r CHESUM XOR A ;RESET CHECKSUM\r SBC HL,DE ;CALCULATE BYTE COUNT\r EX DE,HL\r INC E\r INC D\r DEC HL\r C1LOOP INC HL ;FOR ADDRES = START TO END\r ADD A,(HL) ; CALCULATE CHECKSUM\r DEC E\r JP NZ,C1LOOP\r DEC D\r JP NZ,C1LOOP ;NEXT ADDRESS\r RET ;RETURN\r CHEADJ DB 0FFH ;RESERVE ONE BYTE FOR CHECKSUM ADJUST.\r END\r