|
|
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)
Types: TextFile
Notes: Mikados_K
Names: »START.K«
└─⟦ec8c1e0b0⟧ Bits:30007442 8" floppy ( MIKPROG vol. 1-3, MIKREL vol. 1-3, PCSE 4.7.80 vol 1-3, GL.SYS )
└─⟦this⟧ »START.K«
;START - VED OPSTART - MH 790928
;**********************************
;
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 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 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 FIFJL
;
;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.
;
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
0x0000…0022 Line {l1=0x20, l2=»;START - VED OPSTART - MH 790928«, l3=0x20}
0x0022…0047 Line {l1=0x23, l2=»;**********************************«, l3=0x23}
0x0047…004a Line {l1=0x01, l2=»;«, l3=0x01}
0x004a…008f Line {l1=0x43, l2=» SYMB ;SYMBOLTABEL MED BL.A. ADRESSEN 'TIDSP', DER ANGIVER«, l3=0x43}
0x008f…00ad Line {l1=0x1c, l2=» ;TIDSPUNKTET.«, l3=0x1c}
0x00ad…00b0 Line {l1=0x01, l2=»;«, l3=0x01}
0x00b0…00c8 Line {l1=0x16, l2=»START: LXI H,C1MES«, l3=0x16}
0x00c8…00fd Line {l1=0x33, l2=» SHLD CSEMA ;VED OPSTART ALTID VED NR. 1«, l3=0x33}
0x00fd…0100 Line {l1=0x01, l2=»;«, l3=0x01}
0x0100…0132 Line {l1=0x30, l2=» LHLD RUNN ;SE, OM DER ER EN BESKED.«, l3=0x30}
0x0132…014a Line {l1=0x16, l2=» LXI B,KOSEM«, l3=0x16}
0x014a…015c Line {l1=0x10, l2=» DAD B«, l3=0x10}
0x015c…0170 Line {l1=0x12, l2=» MOV C,M«, l3=0x12}
0x0170…0182 Line {l1=0x10, l2=» INX H«, l3=0x10}
0x0182…01b4 Line {l1=0x30, l2=» MOV B,M ;(BC) :- KORUTINESEMAFOR.«, l3=0x30}
0x01b4…01c6 Line {l1=0x10, l2=» LDAX B«, l3=0x10}
0x01c6…01d8 Line {l1=0x10, l2=» CPI 1«, l3=0x10}
0x01d8…0212 Line {l1=0x38, l2=» JNZ STAR1 ;HOP, HVIS INGEN BESKED ER SENDT.«, l3=0x38}
0x0212…0215 Line {l1=0x01, l2=»;«, l3=0x01}
0x0215…0236 Line {l1=0x1f, l2=»;PROGRAMMET ER STARTET MANUELT.«, l3=0x1f}
0x0236…0239 Line {l1=0x01, l2=»;«, l3=0x01}
0x0239…0277 Line {l1=0x3c, l2=» CALL VINIT ;BESTEM SKÆRM-, LIST- OG FEJLSEMAFOR.«, l3=0x3c}
0x0277…027a Line {l1=0x01, l2=»;«, l3=0x01}
0x027a…028c Line {l1=0x10, l2=»;EGENTLIG START.«, l3=0x10}
0x028c…028f Line {l1=0x01, l2=»;«, l3=0x01}
0x028f…02a6 Line {l1=0x15, l2=»STAR1: LXI D,'P1'«, l3=0x15}
0x02a6…02bc Line {l1=0x14, l2=» LXI H,DKB«, l3=0x14}
0x02bc…02fe Line {l1=0x40, l2=» CALL PFIND ;ANBRING PLADELAGERTABEL-ADRESSEN PÅ 'P1'«, l3=0x40}
0x02fe…033d Line {l1=0x3d, l2=» ANA A ;I DKB+PLBUF. DETTE BENYTTES AF UDIND.«, l3=0x3d}
0x033d…036d Line {l1=0x2e, l2=» JNZ FIFJL ;HOP VED FILSYSTEMFEJL.«, l3=0x2e}
0x036d…0370 Line {l1=0x01, l2=»;«, l3=0x01}
0x0370…0386 Line {l1=0x14, l2=» LXI H,DKB«, l3=0x14}
0x0386…03aa Line {l1=0x22, l2=» MVI A,1 ;ORDRE LÆS.«, l3=0x22}
0x03aa…03da Line {l1=0x2e, l2=» CALL UDIND ;INDLÆS SPOR 0 SEKTOR 0«, l3=0x2e}
0x03da…03ec Line {l1=0x10, l2=» ANA A«, l3=0x10}
0x03ec…041c Line {l1=0x2e, l2=» JNZ FIFJL ;HOP VED FILSYSTEMFEJL.«, l3=0x2e}
0x041c…041f Line {l1=0x01, l2=»;«, l3=0x01}
0x041f…0466 Line {l1=0x45, l2=» LXI D,DKB+BUFF+PNUDA ;HENT SIDST OPGIVNE DATO TIL VISNING.«, l3=0x45}
0x0466…04ab Line {l1=0x43, l2=» LXI H,DATE ;DEN STÅR I 'P1' 'S SPOR 0 SEKTOR 0«, l3=0x43}
0x04ab…04e2 Line {l1=0x35, l2=» MVI B,#10 ;REL. ADRESSE 'PNUDA'«, l3=0x35}
0x04e2…04f7 Line {l1=0x13, l2=» CALL MOVE«, l3=0x13}
0x04f7…04fa Line {l1=0x01, l2=»;«, l3=0x01}
0x04fa…0516 Line {l1=0x1a, l2=»;BED OM NY DATO FRA SKÆRM.«, l3=0x1a}
0x0516…0519 Line {l1=0x01, l2=»;«, l3=0x01}
0x0519…054a Line {l1=0x2f, l2=» LXI B,TXT1 ;PIL TIL START PÅ TEKST.«, l3=0x2f}
0x054a…057c Line {l1=0x30, l2=» MVI A,DATE-TXT1+#10 ;ANTAL TEGN IALT.«, l3=0x30}
0x057c…05b9 Line {l1=0x3b, l2=» MVI D,DATE-TXT1 ;ANTAL TEGN, DER IKKE MÅ ÆNDRES.«, l3=0x3b}
0x05b9…05e0 Line {l1=0x25, l2=» LHLD CSEMA ;SKÆRMSEMAFOR.«, l3=0x25}
0x05e0…061b Line {l1=0x39, l2=» CALL LSKRM ;STIL FORESPØRGSEL OG AFVENT SVAR.«, l3=0x39}
0x061b…062d Line {l1=0x10, l2=» INR B«, l3=0x10}
0x062d…0675 Line {l1=0x46, l2=» JZ ESC ;HVIS BRUGER TASTER 'ESC', RETURNERES (B) = -1.«, l3=0x46}
0x0675…0678 Line {l1=0x01, l2=»;«, l3=0x01}
0x0678…06a8 Line {l1=0x2e, l2=» LXI D,DATE ;FLYT DATO NED I LAGER.«, l3=0x2e}
0x06a8…06bf Line {l1=0x15, l2=» LXI H,DATO«, l3=0x15}
0x06bf…06d5 Line {l1=0x14, l2=» MVI B,#10«, l3=0x14}
0x06d5…06ea Line {l1=0x13, l2=» CALL MOVE«, l3=0x13}
0x06ea…06ed Line {l1=0x01, l2=»;«, l3=0x01}
0x06ed…0727 Line {l1=0x38, l2=» LXI D,DATE ;FLYT DATO TILBAGE PÅ PLADELAGER.«, l3=0x38}
0x0727…0748 Line {l1=0x1f, l2=» LXI H,DKB+BUFF+PNUDA«, l3=0x1f}
0x0748…075e Line {l1=0x14, l2=» MVI B,#10«, l3=0x14}
0x075e…0773 Line {l1=0x13, l2=» CALL MOVE«, l3=0x13}
0x0773…0776 Line {l1=0x01, l2=»;«, l3=0x01}
0x0776…078c Line {l1=0x14, l2=» LXI H,DKB«, l3=0x14}
0x078c…07bb Line {l1=0x2d, l2=» MVI A,2 ;OPERATIONSKODE: SKRIV«, l3=0x2d}
0x07bb…07d1 Line {l1=0x14, l2=» CALL UDIND«, l3=0x14}
0x07d1…07e3 Line {l1=0x10, l2=» ANA A«, l3=0x10}
0x07e3…07f9 Line {l1=0x14, l2=» JNZ FIFJL«, l3=0x14}
0x07f9…07fc Line {l1=0x01, l2=»;«, l3=0x01}
0x07fc…0824 Line {l1=0x26, l2=»;HENT NUVÆRENDE TIDSPUNKT TIL VISNING.«, l3=0x26}
0x0824…0827 Line {l1=0x01, l2=»;«, l3=0x01}
0x0827…0855 Line {l1=0x2c, l2=» LXI D,TIDSP ;ÆNDR EVT. TIDSPUNKT.«, l3=0x2c}
0x0855…086c Line {l1=0x15, l2=» LXI H,TIME«, l3=0x15}
0x086c…0880 Line {l1=0x12, l2=» MVI B,5«, l3=0x12}
0x0880…0895 Line {l1=0x13, l2=» CALL MOVE«, l3=0x13}
0x0895…0898 Line {l1=0x01, l2=»;«, l3=0x01}
0x0898…08a9 Line {l1=0x0f, l2=»;BED OM NY TID.«, l3=0x0f}
0x08a9…08ac Line {l1=0x01, l2=»;«, l3=0x01}
0x08ac…08d3 Line {l1=0x25, l2=» LXI B,TXT2 ;SOM VED DATO.«, l3=0x25}
0x08d3…08f1 Line {l1=0x1c, l2=» MVI A,TIME-TXT2+5«, l3=0x1c}
0x08f1…090d Line {l1=0x1a, l2=» MVI D,TIME-TXT2«, l3=0x1a}
0x090d…0923 Line {l1=0x14, l2=» LHLD CSEMA«, l3=0x14}
0x0923…0939 Line {l1=0x14, l2=» CALL LSKRM«, l3=0x14}
0x0939…094b Line {l1=0x10, l2=» INR B«, l3=0x10}
0x094b…095f Line {l1=0x12, l2=» JZ ESC«, l3=0x12}
0x095f…0962 Line {l1=0x01, l2=»;«, l3=0x01}
0x0962…09a5 Line {l1=0x41, l2=» LXI D,TIME ;GEM DET OPGIVNE TIDSPUNKT SÅ ALLE BRUGERE«, l3=0x41}
0x09a5…09cf Line {l1=0x28, l2=» LXI H,TIDSP ;KAN BENYTTE DET.«, l3=0x28}
0x09cf…09e3 Line {l1=0x12, l2=» MVI B,5«, l3=0x12}
0x09e3…09f8 Line {l1=0x13, l2=» CALL MOVE«, l3=0x13}
0x09f8…09fb Line {l1=0x01, l2=»;«, l3=0x01}
0x09fb…0a31 Line {l1=0x34, l2=»ESC: CALL EXIT ;STOP PROGRAM, FRIGIV REGION.«, l3=0x34}
0x0a31…0a34 Line {l1=0x01, l2=»;«, l3=0x01}
[…0x1…]
0x0a37…0a53 Line {l1=0x1a, l2=»;INDHOP VED FILSYSTEMFEJL.«, l3=0x1a}
0x0a53…0a56 Line {l1=0x01, l2=»;«, l3=0x01}
0x0a56…0a96 Line {l1=0x3e, l2=»FIFJL: LXI H,FINR ;OMDAN DEN BINÆRE FEJLKODE I (A) TIL EN«, l3=0x3e}
0x0a96…0ad0 Line {l1=0x38, l2=» CALL ASCII ;2-CIFRET ASCII-FEJLKODE I 'FINR'«, l3=0x38}
0x0ad0…0ad3 Line {l1=0x01, l2=»;«, l3=0x01}
0x0ad3…0afb Line {l1=0x26, l2=» LXI B,TXT3 ;VIS FRA 'TXT3'«, l3=0x26}
0x0afb…0b2c Line {l1=0x2f, l2=» LXI D,FINR+2-TXT3 ;LÆNGDE AF TEKST«, l3=0x2f}
0x0b2c…0b54 Line {l1=0x26, l2=» MVI A,2 ;OP.KODE: SKRIV«, l3=0x26}
0x0b54…0b7b Line {l1=0x25, l2=» LHLD CSEMA ;SKÆRMSEMAFOR.«, l3=0x25}
0x0b7b…0bbc Line {l1=0x3f, l2=» CALL VSEND ;SEND MEDDELELSE, VENT PÅ SVAR, RETURNER«, l3=0x3f}
0x0bbc…0bfd Line {l1=0x3f, l2=» ;BESKED TIL 'POOL' (FRIE BESKEDBUFFERE).«, l3=0x3f}
0x0bfd…0c00 Line {l1=0x01, l2=»;«, l3=0x01}
0x0c00…0c15 Line {l1=0x13, l2=» CALL EXIT«, l3=0x13}
0x0c15…0c18 Line {l1=0x01, l2=»;«, l3=0x01}
[…0x1…]
0x0c1b…0c49 Line {l1=0x2c, l2=»; D A T A O M R Å D E .«, l3=0x2c}
0x0c49…0c91 Line {l1=0x46, l2=»;*********************************************************************«, l3=0x46}
0x0c91…0c94 Line {l1=0x01, l2=»;«, l3=0x01}
0x0c94…0cb3 Line {l1=0x1d, l2=»TXT1: DB 'Enter date: '«, l3=0x1d}
0x0cb3…0cc7 Line {l1=0x12, l2=»DATE: DS #10«, l3=0x12}
0x0cc7…0cca Line {l1=0x01, l2=»;«, l3=0x01}
0x0cca…0ce9 Line {l1=0x1d, l2=»TXT2: DB 'Enter time: '«, l3=0x1d}
0x0ce9…0cfb Line {l1=0x10, l2=»TIME: DS 5«, l3=0x10}
0x0cfb…0cfe Line {l1=0x01, l2=»;«, l3=0x01}
0x0cfe…0d23 Line {l1=0x23, l2=»TXT3: DB 'File system error '«, l3=0x23}
0x0d23…0d35 Line {l1=0x10, l2=»FINR: DS 2«, l3=0x10}
0x0d35…0d38 Line {l1=0x01, l2=»;«, l3=0x01}
[…0x1…]
0x0d3b…0d7e Line {l1=0x41, l2=»;DATA KONTROL BLOK. 'HOVEDE' PÅ 30HEX TEGN, BUFFER PÅ 100HEX TEGN«, l3=0x41}
0x0d7e…0d81 Line {l1=0x01, l2=»;«, l3=0x01}
0x0d81…0d97 Line {l1=0x14, l2=»DKB: DS SEKT1«, l3=0x14}
0x0d97…0dd5 Line {l1=0x3c, l2=» DB 0,0,0,1 ;ANGIV TIL UDIND, AT SPOR 0 SEKTOR 0,«, l3=0x3c}
0x0dd5…0e10 Line {l1=0x39, l2=» ;IALT 1 SEKTOR SKAL LÆSES/SKRIVES.«, l3=0x39}
0x0e10…0e2c Line {l1=0x1a, l2=» DS 130-SEKT1-4«, l3=0x1a}
0x0e2c…0e2f Line {l1=0x01, l2=»;«, l3=0x01}
[…0x1…]
0x0e32…0e48 Line {l1=0x14, l2=» END START«, l3=0x14}
0x0e48…0e60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ┆ ┆
0x0e60…0e80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ┆ ┆
[…0x29…]
0x13a0…13c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 63 ┆ c┆