DataMuseum.dk

Presents historical artifacts from the history of:

CR80 Hard and Floppy Disks

This is an automatic "excavation" of a thematic subset of
artifacts from Datamuseum.dk's BitArchive.

See our Wiki for more about CR80 Hard and Floppy Disks

Excavated with: AutoArchaeologist - Free & Open Source Software.


top - download

⟦57f137b5b⟧ TextFile

    Length: 2804 (0xaf4)
    Types: TextFile
    Names: »MSD310.S«

Derivation

└─⟦b5acf5c79⟧ Bits:30005104 8" CR80 Floppy CR80FD_0063 ( VOL: SCC.V MSS Directory: MS2.D )
    └─⟦f918199fd⟧ 
        └─ ⟦this⟧ »MS2.D!MSD310.S« 

TextFile

MESSAGE <:MSD310.S V810304:>
;-----------------------------------------------------------------------
; SUBROUTINE MSD310
; CONNECT FILES.
;
; CALL TO:    MON    STREAM,    (CONNECT,INREC,OUTREC)
;             MON    IO,        (RESET)
;
; REGISTERS          CALL               EXIT
; R0,R1,R2,R3,R6,R7  -                  DEST
; R4                 LINK               DEST
; R5                                    NOT USED
;
; INPUT:   IOFD.IOCB'S, SOURCE FILE BINARY HEADER
; OUTPUT:  IOST.IOCB'S, OBJECT FILE BINARY HEADER (DUMMY)
; EXIT TO: LINK+0    (OK)
;          MSE100    (FILE ERROR)
;          MSE110    (READ ERROR)
;          MSE120    (WRITE ERROR)
;-----------------------------------------------------------------------
MSD310:                             ; CONNECT FILES:
        MOV          R4  RLD000     ;   SAVE RETURN LINK
                                    ;   BEGIN INPUT FILE:
        MOVC  SRCIO             R6  ;     GET IOCB ADDR
        MOV   IOFD.  X6         R4  ;     GET FILE DESCRIPTOR
        MOVC  0                 R3  ;     CONNECT FOR INPUT
        MON   STREAM,    CONNECT    ;
        JMPI  &      S4  MIE100     ;E    (NOT CONNECTED)
        MOV          R4  IOST.  X6  ;     SAVE STREAM HANDLE
        MOVC  IBINHD            R1  ;     GET BINARY HEADER IMAGE
        MOVC  BHELGT            R2  ;     AND BYTE LENGTH
        MON   STREAM,    INREC      ;     GET SOURCE BINARY HEADER
        JMPI  &      S4  MIE110     ;E    (NOT READ)
                                    ;   BEGIN OUTPUT FILE:
        MOVC  OBJIO             R6  ;     GET IOCB ADDR
        MOV   IOFD.  X6         R4  ;     GET FILE DESCRIPTOR
        MON   IO,        RESET      ;     'RESET' IT (FOR OUTPUT)
        JMPI  &      S4  MIE100     ;E    (NOT RESET)
        MOVC  1                 R3  ;     CONNECT FOR OUTPUT
        MON   STREAM,    CONNECT    ;
        JMPI  &      S4  MIE100     ;E    (NOT CONNECTED)
        MOV          R4  IOST.  X6  ;     SAVE STREAM HANDLE
        MOVC  OBINHD            R1  ;     GET BINARY HEADER IMAGE
        MOVC  BHELGT            R2  ;     AND BYTE LENGTH
        MON   STREAM,    OUTREC     ;     WRITE ZERO BINARY HEADER
        JMPI  &      S4  MIE120     ;E    (NOT WRITTEN)
                                    ;   BEGIN TEMP FILE:
        MOVC  TEMPIO            R6  ;     GET IOCB ADDR
        MOV   IOFD.  X6         R4  ;     GET FILE DESCRIPTOR
        MON   IO,        RESET      ;     'RESET' IT (FOR OUTPUT)
        JMPI  &      S4  MIE100     ;E    (NOT RESET)
        MOVC  1                 R3  ;     CONNECT FOR OUTPUT
        MON   STREAM,    CONNECT    ;
        JMPI  &      S4  MIE100     ;E    (NOT CONNECTED)
        MOV          R4  IOST.  X6  ;     SAVE STREAM HANDLE
        JMPI             RLD000     ;R  RETURN M