|
DataMuseum.dkPresents historical artifacts from the history of: RegneCentralen RC3600/RC7000 |
This is an automatic "excavation" of a thematic subset of
See our Wiki for more about RegneCentralen RC3600/RC7000 Excavated with: AutoArchaeologist - Free & Open Source Software. |
top - download
Length: 11264 (0x2c00) Types: TextFile Names: »FDFKL«
└─⟦403f4c9ff⟧ Bits:30001796 SG0016 Floppy └─⟦this⟧
15.5.84 FÆRDIGVERSION NR 3, REV NR 2.06 /// FD /// AED8:N, :J ************************************************** SIDE INDH 1: TEKSTER, FEJL 2: BIRTH, DEAD 3: HY HR HM HO HB HS 4: @ Y P R 5: B : = . M L T K I O 6: S G 7: GENERELLE RUTINER: INTK, GOP, INTFI, OUTFI, LMV, LTL 8: -"- INTW, INTHX, OUT, OUTW, OH, OSP, LPD, OUTXT /ETC 9: -"- FLYT, SEBYT, TYPE 10: -"- HARD, BLB /ETC 11: ZONER, PRCD, TABEL GEN. FIL-EDITOR PL MAJ 84 / VERS. 2.06 @@, ?: HELP HS: HARDW SELECT TRC/SEC I/O * EX: HS130B, HS130BO (TRC 19 /SECT 11) (O=OUT) HO: HARDW OUTPUT, SAMME SECTOR * EX: HO (INGEN PARAM!) HY: HARDW INPUT NÆSTE SECTOR * EX: HY HR: HARDW REPEAT (LÆS NÆSTE) * EX: HR (INGEN PARAM) HM: UNIT BLOCKDISPL. DEF * EX: HM, HM@ (@=UNIT 0/3) HB: HARDW BLOCK SELECT INPUT * EX: HB011A (011A=BLOCK 256+16+10) GI: OPHÆV HARDW SELECT, INIT DEVICE * EX: GI3, GI0 GR, GW, GC, GK, GO: FILOPERATIONER * EX: GKTESTF, GWTESTF:3 O: "OCTALCOPY" KOPIERING UDENOM BUFFER Y: LÆS SIDE TIL BUFFER P: "PUT" OUTPUT BUFFER TIL NY FIL R: "REPEAT": 1)P 2)Y T: "TYPE" SKRIV SIDEN UD FRA BUFFER TIL SKÆRM .: AKT. POSITION :, =: SIDENS ANTAL LINIER OG TEGN M: MOVE ANTAL TEGN * EX: M7, M+7, M-7, MG (MOVE 16 PL.) L: LINEMOVE * EX: L7, L+7, L-7 (EXACT LODRET HVIS EJ ASCII) I: INSERT * EX: I T E S T0D0A, I_TEST<60>RETURN><60>ESC> K: KILL ANTAL TEGN * EX: K7, K+7, KG S: SEARCH BYTE * EX: S0A, S A, S41 (41= A) C: UDSKIFT * EX: C A_ B ***((IKKE IMPL))*** H: HOME FUT0: FUT1: .TXT " *** IKKE IMPL ***<0>" FUT2: .TXT " *** BUFFER FULD ***<0>" FUT3: .TXT " *** IKKE FUNDET ***<0>" FUT4: .TXT " *** FILER ÅBNE ***<0>" FUT5: .TXT " *** HARD MODE ***<0>" FUT6: .TXT " *** ILLEGAL BUFFER SIZE ***<0>" FUT7: .TXT " *** UDEF. TRACK/SECTOR ***<0>" FUT8: FUT9: .TXT " *** ??? ***<0>" FFUT1: .TXT " *** FILSTATUS = <0>" FFUT2: .TXT " DI OF BU . . . IL EF BL DL PA EM PO DM TI REJ<10><0>" .TXT % SPECIELLE RUTINER (SE OSSE "?") @A: ASCII-FORMAT @B: ASCII-HEX-FORMAT @C: HEX-FORMAT @D: DISASSEMBLER @E: KVÆL $LPT-LOGNING @F: FORBERED $LPT-LOGNING (SE OSSE @I) @G: VÆLG LINIEBREDDE * EX: @G02, @G10, @G18, @G20, @G30 @H: VÆLG BUFFER * EX: @H0080, @H0400 (MAX!) @I: OPEN $LPT FØR LOGNING @J: JSR TIL ADR. * EX: @J7005 (FARLIGT!!!) @K: OUTPUT SIDE TIL COREADR * EX: @K7005 (FARLIGT) @L: LÆS SIDE FRA COREADR * EX: @L7005 @M: KORTLÆGGE $FD1-DISKETTE * EX: @M *** BUFFER W-ADR = <0>% === FEJL === CALL: FEJLNR . . (CUR) SIDE 2: BIRTH & DEAD DEAD6: GFK9 FLAG FOR ÅBNE FILER DEAD7: GFK8 FLAG FOR ÅBNE FILER PÅ $FD1 «ff» SIDE 3: *************** EDITOR HARD OPERATIONS ********* === HY === === HR === === HM === === HO === === HB === BLO00: 0 BLOCK BLO01: 0 UNIT 0/3 OFFSET BLO11: 0 SECTOR BLO10: 0 TRACK === HS === *** SIDE 4: ********************************* EDITOR-FUNKTIONER ********** === @ === ---------------- NOT IMPL: @D @M, ETC ---------------- === Y === === P OG R === ------------------ALM. SUBRUTINER TIL Y OG P: RESET COUNTER OG FORB OUTPUT TIL TTY (MONITORING) **** CALL: . . . CUR RETU: COUN0 BUADR*2 TTZON CUR OUTPUT TIL LPT AF KOMMANDOEN (ACC UDEF UNDT. AC1 FØR + AC3=CUR EFTER) ** * * ::::::::::::: COUN0: 128 ORIG DEF I INPUT (EVT) COUN1: 0 DEF I Y, DOWN I Y COUN2: 0 DEF I Y, ÆNDR V K,I,C, BRUGES I P,T,F PCC: 0 POINTER = 0 - COUN2 PCADR: BUADR*2 DEF I Y, REDEF I M,S,C,L,I PCAD1: BUADR*2 DEF I F & T OG UPDATERET I SAMME ARBA0: BUADR*2 FAST !!!! ARBA1: BUADR*2 DEF I Y OG P OG UPDATERET I Y OG P ::::::::::::: ----------------- SUBRUTINER TIL Y OG P SLUT «ff» *** SIDE 5: === B === === : === === = === === . === (BRUGES OSSE AF FX. MOVE) === M === COMMAND EX: M7 MB M+B M-B (B=11) === L === LMV UDSKIFTELIG RUTINE (61) ------------------------ EGL. SUBR TIL BL. A. MOVE-INPUT-HÅNDTERING: SUBR. DIPL1 * HENTE TÆLLEPARAM FRA INPUT I KOMMANDO CALL: . . . . RETU: NEG? ÆGTEBY % CUR SUBR. BYBI1 * BYTE I AC1 TIL BINÆR VÆRDI, SIGNED & UNSIGNED CALL: 1=NEG BYTE . . RETU: 1=NEG SIGNED UNSIGN CUR BINVAL BINVAL --------------------- SUBR. SLUT === T === === K === === I === === O === *** SIDE 6: === S === SØG E N K E L T BYTE (PT) === G === GR GW GC GK GI GFHAR: HFLAG HARDMODE FLAG : FILER PÅ $FD1 FORBUDT ISZ GFK8 FIL PÅ $FD1 FLAG ISZ GFK9 FIL FLAG :::::::::::::::: GFK8: 0 *** $FD1-FIL-FLAG *** /HS, HB CHECK /GR, GW, GC SET GFK9: 0 *** FILFLAG *** /H, GK CHECK /GR, GW, GC SET :::::::::::::::: «ff» *** SIDE 7: ************** GENERELLE ELEMENTÆRE FUNKTIONER DEF I CUR-TABEL * ***** ALLE KALD OG RETURN MED VELDEFINEREDE ACC (SÆDV.UÆNDREDE!) --------------------------------- INTK * INPUT KOMMANDO FRA TTY CALL: ? ? ? CUR RETU: 0 0 RETURNP CUR RETURNPOINT DEF IN AC2 -------------------------- GOP * OPEN TTY FOR I/O CALL: MODE . . CUR RETU: = = TTZON CUR -------------------------- INTFI * DEFINER FILZONENAVN OG INIT DEVICE (FIL IKKE ÅBNET) CALL: . . ZON CUR RETU: DEVIC = = CUR ---------------------------- OUTFI * OUTPUT FILNAVN TIL TTY OULFI OUFI (?) CALL: ZON . . CUR RETU: = = OUZON CUR -------------------------- LMV * LINEMOVE ENTRY LMV1 TIL HEXVERSION ENTRY LMV2 TIL ASCIIVERSION ENTRY LMV9 TIL 2 (DISASS) LMO91: 24 (ÆNDRES EVT VED @) CALL: 1=NEG SIGNED UNS. CUR BINVAL BINVAL RETU: = EFF.VAL = CUR -------------- LTL * LINIETÆLLERUTINE CALL: 1=NEG ANTAL OPDAT CUR RETU: TALT PCC PCADR CUR *** SIDE 8: -------------------------- INTW * INPUT WORD FRA TTY I HEXKODE (4 TEGN) (TTY ÅBNET FORUDS) CALL: . . . CUR RETU: WORD HØJRBY = CUR -------------------------- INTHX * INPUT FRA TTY (EVT HEXKODE, EVT SPACETASTKODE, EVT TASTKODE) INT * INPUT FRA TTY (TASTKODE) INI * INPUT FRA INPUTFIL CALL: . . . CUR RETU: = BYTE ZON/0 CUR 0 HVIS HX 1.BY < 32 ONLY --------------------------- OULHX * OUTPUT BYTE TIL LPT UDEN TEXTOPTION OUTHX * OUTPUT BYTE TIL TTY UDEN TEXTOPTION OUT * OUTPUT BYTE TIL TTY EVT HEXKODE, EVT SPACETASTKODE "HH ", " A ", "A" OUL * OUTPUT BYTE TIL LPT EVT HEXKODE, EVT SPACETASTKODE OUO * OUTPUT BYTE TIL OUTPUTFIL OUT & OUL KAN ÆNDRES VED KOMMANDO @A, @C CALL: . BYTE . CUR RETU: = = ZON CUR W22: LPDW SÆTTER LPTDEAD ADR HER OUTA * OUTPUT TIL TTY SOM ALM ASCIIFIL OUTL * OUTPUT TIL LPT SOM ALM ASCIIFIL JMP W21 OUTCHAR & RETURN JMP W22 IGN <0> OG <127> OCH EVT UDELADES ?! JMP W21 NORMAL NL JMP W21 <9>, <127> JMP OUA4 SÆRL. <12> JMP W21 ELLERS "ü" --------------------- OUTW * OUTPUT WORD TIL TTY /HEX OULW * OUTPUT WORD TIL LPT /HEX CALL: WORD . . CUR RETU = = ZON CUR -------------------------- FLG. OUTPUTRUTINER FORUDSÆTTER FORUDG. DEF AF ZONE -------------------------- OH * OUTPUT HEXTEGN CALL: TGN . ZON CUR RETU: = = = CUR ------------------------- OSP * OUTPUT SPACE (ZON) ONL * OUTPUT NL (ZON) OCH * OUTPUT CHAR (ZON) CALL: . . ZON(!) CUR RETU: = = = CUR ------------------------- LPD * LPT-DEAD POINT DEF = .+2 LPDW * LPT-DEAD POINT IN OUL-RUTINEN CALL: . . . CUR RETU: = = = CUR LPFLG: 0 FORBUDSFLAG (SE @E, @F) ------------------- OUTXT **** CALL: BYAD . ZON CUR RETU: = = = CUR *** SIDE 9: ------------------------- FLYT * FLYTTER BUFFERDATA FRA PCC TIL ENDE ET STYKKE CALL: 0/1 ANTAL . CUR RETU: = = = CUR HVIS NED: 0.........FLYTN...FLYFN....FLYTØ...FLYFØ HVIS OP: 0.........FLYFN...FLYTN............FLYFØ...FLYTØ 0.........=PCADR...................ARBA0+COUN2 ------------------------ SEBYT * SEARCH BYTE CALL: . BYTE . CUR RETU: = = 0/1 CUR 1=FOUND PCC & PCADR OPDATERES (EVT TIL 0) ------------------ TYPE * SKRIV SIDEN TIL TTY/ EVT OSSE LPT CALL: 1=LPT . . CUR RETU: = = = CUR *** SIDE 9: ---------------------------- HARD * HARDMODE INPUT ELLER OUTPUT CALL: TRACK SECT 1/0 CUR RETU: = = = CUR HFLAG: 0 HARDMODE FLAG * FILFORBUD PÅ FD1 * HM666: GFK8 $FD1-FIL-FLAG * HARDMODE FORBUDT ------------------ HARDO * OUTPUT SAMME SECTOR SOM SIDST ER LÆST HARDR * OUTPUT (HARDO) OG INPUT NÆSTE SECTOR HARDY * READ NÆSTE SECTOR CALL: . . . CUR RETU: TRACK SECT 1/0 CUR ------------------------- BLB * BLOCKBEREGNING AF TRACK/SECTOR CALL: BLOCK . . CUR RETU: TRACK SECT = CUR *** SIDE 11: «ff» *** SIDE 11: ********************** TABEL OVER PRCD-DEFINEREDE FUNKTIONER: .DUSR GOP = JSR @ 30,3 OP1 .DUSR INTHX= JSR @ 31,3 RTH1 .DUSR INT = JSR @ 32,3 RT .DUSR INI = JSR @ 33,3 RI .DUSR OUT = JSR @ 34,3 WT .DUSR OUL = JSR @ 35,3 WL .DUSR OUO = JSR @ 36,3 WO .DUSR OH = JSR @ 37,3 H1 .DUSR OSP = JSR @ 38,3 O1 .DUSR ONL = JSR @ 39,3 O2 .DUSR OCH = JSR @ 40,3 O4 .DUSR INTK = JSR @ 41,3 INTK1 .DUSR OPERA= JSR @ 42,3 OPER1 .DUSR LPD = JSR @ 43,3 LPD1 .DUSR LPDW = JSR @ 44,3 LPDW1 .DUSR FEJL = JSR @ 45,3 FEJL1 .DUSR OUTXT= JSR @ 46,3 OUTX1 .DUSR SEBYT= JSR @ 47,3 SEBY1 .DUSR INTFI= JSR @ 48,3 RTF1 .DUSR OUTFI= JSR @ 49,3 OUTF1 .DUSR OULFI= JSR @ 50,3 OULF1 .DUSR OUFI = JSR @ 51,3 OUF1 .DUSR BLB = JSR @ 52,3 BLB1 .DUSR HARD = JSR @ 53,3 HM1 .DUSR HARDO= JSR @ 54,3 HM5 .DUSR OUTHX= JSR @ 55,3 WTHX .DUSR OULHX= JSR @ 56,3 WLHX .DUSR FLYT = JSR @ 57,3 FLYT1 .DUSR TYPE = JSR @ 58,3 TYP1 .DUSR HARDR= JSR @ 59,3 HM6 .DUSR HARDY=JSR @ 60,3 HM7 .DUSR LMV = JSR @ 61,3 LMV1 .DUSR INTW = JSR @ 62,3 IW1 .DUSR OUTW = JSR @ 63,3 OUTW1 .DUSR OULW = JSR @ 64,3 OULW1 .DUSR LTL = JSR @ 65,3 LTL1 .DUSR WHX = JSR @ 66,3 WHX1 «ff» «nul»