80-Bus News

  

November–December 1982, Volume 1, Issue 4











Page 26 of 51











Z2 ASSHMBLY LISTING ........ PAGE 3

ODOD DF

ODOE 83

ODOF 2816 OD11 EF

opi2 opo94552 OD16 52475220 ODIA 54525920 ODIE 41474149 OD22 4800 ObD24 C3870C Oda? 210004 OD2A 111FOR OD2D 011400 OD30 EDBO OD32 2118C4 OD35 22E50E OD38 2AB30R OD3B EDSB16C4 OD3F BT

OD40 ED52 OD42 19

0D43 CABO0C OD46 1155C0 OD49 011400 OD4C EDBO OD4E 22E50B OD4E

OD4E

OD4E

OD51 O60D 0D53 DD21E90E OD57 1470400 ODSA C5

OD5B O60A ODS5D 21550 OD60 DDES OD62 DDTEOO OD65 BE

OD66 200A OD68 Db23 OD6A 23

OD6B 10F5 OD6D DDE ODEF C1

OD7O 18C6 OD72 DDE oD74 DDI9 OD76 C1

ODTT 1081 OD79 CDDDOE ODT CDDAOD OD7F CDO1OR OD82 210010 OD85 EDSB61C0 OD89 3A63C0 ODBC 47

ODBD 3ZA01CO OD90 4F

STAZO

STA40

LOOP10

LOOP20

LOOP30

NEXT

STA50

RST DB JR RST

DB

LD LD LD LDIR LD

LD LD OR SBC ADD

LD LD LDIR LD

PUSH LD cP

INC INC DINZ POP POP

POP ADD POP DING CALL CALL CALL LD LD LD LD LD LD

NASSYS

ZRDIR ;READ DISK DIRECTORY 2, STA3O

PRS

CRET,TAB,’ERROR TRY AGAIN’,O STA1O HL,BUFFER ;COPY DISK ID DE, NAME BC, 20

;LOAD IT OUT HL, DIR sHL = A(DIRECTORY) (DIRPOS),HL ;SAVE It HL, (DIRPOS) ;HL = POS IN DIR DE,(ENDDIR) ;DE = A(END DIR) A HL, DE ;END OF FILES ON DISK HL, DE ;RESTORE ADDRESS Z, START ;YES NEXT DISK DE, S1FCB ;COPY TO S1FCB BC, 20 ;BC = L(FCB)

;ZAP IT ACROSS (DIRPOS),HL ;KEEP DIR POSN

--- SCAN TABLE --- B13 B= NO OF TABLE ENTRIES IX, TABLE IX = A( TABLE)

DE, 10 DE = ENTRY SIZE

BC ;KEEP BC

B,10 ;B = SCAN LENGTH HL,S1FCB ;HL = THIS FILE NAMB

IX ;KEEP IX,

A, (1X+0) ;GEBT FROM TABLE

(HL) ; COMPARE

NZ, NEXT ;PAIL

TX ;INDEX TO NEXT CHAR HL

LOOP30 ;REPEAT

IX ;G0T If OK

BC ;RECOVER STACK

LOOPIO ; CONTINUE

Ix ;RESET POINTER

IX, DE ;POINT TO NEXT

BC ;RECOVER BC

LOOP20 ;TRY AGAIN

WAIT ;WAIT .5 SEC

HEAD ;PRINT HEADINGS

PRINT ;PRINT FILE INFo

HL, 21000 ;LOAD ADDRESS

DE,(FSEC) ;SECTOR ADDRESS

A, CFNSC) ;A = NUMBER OF SECTORS B,A ;B = NUMBER OF SECTORS A, (DDRV) ;A = DIRECTORY DRIVE CA ;C = DIRECTORY DRIVE

en te em eR eR ome

22 ASSEMBLY LISTING ...+...+ PAGE 4

ope1 DF RST NASSYS opg2 81 DB ZDRD

OD93 -C2A70D op NZ, ERRORD OD96 210010 LD HL, £1000 ope9 220c0c LD (ARG1 ), HL OD9C OFOO LD c,0

ODIE 09 ADD HL,BC ODOF 22080 LD (ARG2), HL ODA2 DF RST NASSYS ODA3 57 DB "wt

ODA4 C3380D JP LOOP1O ODA4

ODA4

ODA4

ODAT F5 ERRORD PUSH AT

ODAS EF RST PRS

ODAQ OD094572

ODAD 726F7220

ODB1 3D3D3D3E

ODBS 2000 DB ODB7 4 POP AF ODBS DF RST WASSYS ODB9 88 DB ZCOV ODBA 456D7367 DB "Emag" ODBE EF DSKEND RST PRS ODBF 0D444953

ODC3 4B20492D

QDCT 4F204552

ODCB 524F5220

ODCF 53544F50

ODD3 50454420

ODD7 00 DB ODDS DF RST WNASSYS ODDO 5B DB RETNAS opDg

ODDO

ODD9

ODDA EF HEAD RST PRS

ODDB ocoo DB CLEAR, 00 ODDD 21D40B LD ODEO 222900 LD ODES EF RST PRS ODE4 54415045

ODES 20424143

ODEC 48555020

ODFO 46475220

ODF4 444953438

ODF8 5300 DB ODFA 210A08 LD ODFD 22290 LD OEBOO C9 RE? OOO

OEOO

OBOO

OEO1 3E0C PRINT LD A, CLEAR O03 DF RST NASSYS OEO4 6F \ DB souT ORO5 CDDDOE CALL WATT

HL, LINE

HL, TOPLN+10 (CURSOR) , HL

(CURSOR), HL

s;READ IT IN ; ERROR

;SET UP FOR WRITE

;CALC END ADD

;RETURN

y--- DISK ERROR --- } ;

KEEP ERROR NUMBER

CRET, TAB, "Error ===> ",00

sLOAD ERROR OVERLAY ;PRINT MESSAGE

CRET, DISK I-O ERROR STOPPED ‘,00

--- SUBROUTINE HEAD ---

om em oe

;SETUP CURSOR POSN ;SET IT UP

‘PAPE BACKUP FOR DISKS’,0O

;RESET FOR NORMAL PRINT

«= SUBROUTINE PRINT +--

te an en

sWAIT .5 SEC


This is an OCR’d version of the scanned page and likely contains recognition errors.











Page 26 of 51