|
DataMuseum.dkPresents historical artifacts from the history of: MIKADOS |
This is an automatic "excavation" of a thematic subset of
See our Wiki for more about MIKADOS Excavated with: AutoArchaeologist - Free & Open Source Software. |
top - download
Length: 5056 (0x13c0) Notes: Mikados TextFile, Mikados_K Names: »START«
└─⟦e93ad20dd⟧ Bits:30005301 Mikados utility programs └─ ⟦this⟧ »START«
;START - VED OPSTART - CT-15.12.1981 VERS: DB 'START version 15.12.1981' VERSE: ;***************************************************************** ; SYMB ;SYMBOLTABEL MED BL.A. ADRESSEN 'TIDSP', DER ANGIVER ;TIDSPUNKTET. ; START: LXI H,C1MES SHLD CSEMA ;VED OPSTART ALTID VED NR. 1 ; LHLD RUNN ;SE, OM DER ER EN BESKED. LXI B,KOSEM DAD B MOV C,M INX H MOV B,M ;(BC) :- KORUTINESEMAFOR. LDAX B CPI 1 JNZ STAR1 ;HOP, HVIS INGEN BESKED ER SENDT. ; ;PROGRAMMET ER STARTET MANUELT. ; CALL VINIT ;BESTEM SKÆRM-, LIST- OG FEJLSEMAFOR. ; ;EGENTLIG START. ; STAR1: LXI B,VERS ;UDSKRIV VERSIONSDATO LXI D,VERSE-VERS MVI A,2 LHLD CSEMA CALL VSEND LXI D,'P1' LXI H,DKB CALL PFIND ;ANBRING PLADELAGERTABEL-ADRESSEN PÅ 'P1' ANA A ;I DKB+PLBUF. DETTE BENYTTES AF UDIND. JNZ FIFJL ;HOP VED FILSYSTEMFEJL. ; LXI H,DKB MVI A,1 ;ORDRE LÆS. CALL UDIND ;INDLÆS SPOR 0 SEKTOR 0 ANA A JNZ FIFJL ;HOP VED FILSYSTEMFEJL. ; LXI D,DKB+BUFF+PNUDA ;HENT SIDST OPGIVNE DATO TIL VISNING. LXI H,DATE ;DEN STÅR I 'P1' 'S SPOR 0 SEKTOR 0 MVI B,#10 ;REL. ADRESSE 'PNUDA' CALL MOVE ; ;BED OM NY DATO FRA SKÆRM. ; LXI B,TXT1 ;PIL TIL START PÅ TEKST. MVI A,DATE-TXT1+#10 ;ANTAL TEGN IALT. MVI D,DATE-TXT1 ;ANTAL TEGN, DER IKKE MÅ ÆNDRES. LHLD CSEMA ;SKÆRMSEMAFOR. CALL LSKRM ;STIL FORESPØRGSEL OG AFVENT SVAR. INR B JZ ESC ;HVIS BRUGER TASTER 'ESC', RETURNERES (B) = -1. ; LXI D,DATE ;FLYT DATO NED I LAGER. LXI H,DATO MVI B,#10 CALL MOVE ; LXI H,'P1' CALL RESDI ;RESERVE LABEL SECTOR ANA A ;OK? JNZ FIFJL ;NO ; LXI H,DKB MVI A,1 ;READ COMMAND CALL UDIND ;READ LABEL SECTOR, IT MAY HAVE BEEN CHANGED ANA A ;OK? JNZ FIFJL1 ;NO ; LXI D,DATE ;FLYT DATO TILBAGE PÅ PLADELAGER. LXI H,DKB+BUFF+PNUDA MVI B,#10 CALL MOVE ; LXI H,DKB MVI A,2 ;OPERATIONSKODE: SKRIV CALL UDIND ANA A JNZ FIFJL1 ; LXI H,'P1' CALL RELDI ;RELEASE LABEL SECTOR ; ;HENT NUVÆRENDE TIDSPUNKT TIL VISNING. ; LXI D,TIDSP ;ÆNDR EVT. TIDSPUNKT. LXI H,TIME MVI B,5 CALL MOVE ; ;BED OM NY TID. ; LXI B,TXT2 ;SOM VED DATO. MVI A,TIME-TXT2+5 MVI D,TIME-TXT2 LHLD CSEMA CALL LSKRM INR B JZ ESC ; LXI D,TIME ;GEM DET OPGIVNE TIDSPUNKT SÅ ALLE BRUGERE LXI H,TIDSP ;KAN BENYTTE DET. MVI B,5 CALL MOVE ; ESC: CALL EXIT ;STOP PROGRAM, FRIGIV REGION. ; ; ;INDHOP VED FILSYSTEMFEJL. ; FIFJL1:PUSH PSW LXI H,'P1' CALL RELDI ;RELEASE LABEL SECTOR POP PSW FIFJL: LXI H,FINR ;OMDAN DEN BINÆRE FEJLKODE I (A) TIL EN CALL ASCII ;2-CIFRET ASCII-FEJLKODE I 'FINR' ; LXI B,TXT3 ;VIS FRA 'TXT3' LXI D,FINR+2-TXT3 ;LÆNGDE AF TEKST MVI A,2 ;OP.KODE: SKRIV LHLD CSEMA ;SKÆRMSEMAFOR. CALL VSEND ;SEND MEDDELELSE, VENT PÅ SVAR, RETURNER ;BESKED TIL 'POOL' (FRIE BESKEDBUFFERE). ; CALL EXIT ; ; ; D A T A O M R Å D E . ;********************************************************************* ; TXT1: DB 'Enter date: ' DATE: DS #10 ; TXT2: DB 'Enter time: ' TIME: DS 5 ; TXT3: DB 'File system error ' FINR: DS 2 ; ; ;DATA KONTROL BLOK. 'HOVEDE' PÅ 30HEX TEGN, BUFFER PÅ 100HEX TEGN ; DKB: DS SEKT1 DB 0,0,0,1 ;ANGIV TIL UDIND, AT SPOR 0 SEKTOR 0, ;IALT 1 SEKTOR SKAL LÆSES/SKRIVES. DS 130-SEKT1-4 ; ; END START