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

⟦6f621bb06⟧ TextFile

    Length: 3130 (0xc3a)
    Types: TextFile
    Names: »MS5100.S«, »~ORPHAN_0x0040«

Derivation

└─⟦93791531c⟧ Bits:30005105 8" CR80 Floppy CR80FD_0064 ( VOL:SCC.V MSS Directory: MS1.D )
    └─⟦185cc4db7⟧ 
        └─ ⟦this⟧ »~ORPHAN_0x0040« 
└─⟦b5acf5c79⟧ Bits:30005104 8" CR80 Floppy CR80FD_0063 ( VOL: SCC.V MSS Directory: MS2.D )
    └─⟦f918199fd⟧ 
        └─ ⟦this⟧ »MS2.D!MS5100.S« 

TextFile

MESSAGE <:MS5100.S V810326:>
;-----------------------------------------------------------------------
; SUBROUTINE MS5100
; WRITE DAYTIME GROUP TO TABBUF
;
; REGISTERS          CALL               EXIT
; R4                 LINK               DEST
; R0,R1,R2,R3,R5     -                  DEST
; R6,R7                                 NOT USED
;
; INPUT:   TDAYM,THOUR,TMIN,TMONTH,TYEAR
; OUTPUT:  TABBUF
; EXIT TO: LINK+0 (OK)
;-----------------------------------------------------------------------
MS5100:                             ; WRITE DAYTIME GROUP:
        MOV          R4  RL5000     ;   SAVE RETURN LINK
        MOV   TDAYM             R0  ;   GET DAY-OF-MONTH
        MOVC  0                 R1  ;   AS LONG INTEGER
        SHS          R0  32         ;   IF OUTSIDE RANGE
        IEQ          R0  0          ;
        JMPI         S4  MIE200     ;E  THEN MSC ERROR
        MOVC  2                 R2  ;   SETUP AS 2-DIGIT NUMBER
        MOVC  0                 R5  ;   POSITION 0-1 IN BUFFER
        JMPI         S4  MI4100     ;   WRITE INTEGER
        MOV   THOUR             R0  ;   GET HOUR-OF-DAY
        MOVC  0                 R1  ;   AS LONG INTEGER
        IHS          R0  24         ;   IF OUTSIDE RANGE
        JMPI         S4  MIE200     ;E  THEN MSC ERROR
        MOVC  2                 R2  ;   SETUP AS 2-DIGIT NUMBER
        MOVC  2                 R5  ;   POSITION 2-3 IN BUFFER
        JMPI         S4  MI4100     ;   WRITE INTEGER
        MOV   TMIN              R0  ;   GET MINUTE-OF-HOUR
        MOVC  0                 R1  ;   AS LONG INTEGER
        IHS          R0  60         ;   IF OUTSIDE RANGE
        JMPI         S4  MIE200     ;E  THEN MSC ERROR
        MOVC  2                 R2  ;   SETUP AS 2-DIGIT NUMBER
        MOVC  4                 R5  ;   POSITION 4-5 IN BUFFER
        JMPI         S4  MI4100     ;   WRITE INTEGER
        MOV   TYEAR             R0  ;   GET YEAR
        MOVC  0                 R1  ;   AS LONG INTEGER
        ILO          R0  1981       ;   IF OUTSIDE RANGE
        JMPI         S4  MIE200     ;E  THEN MSC ERROR
        MOVC  100               R3  ;   
        JMPI         S4  MI3100     ;   DIVIDE TO GET REMAINDER
        MOV          R2         R0  ;   POSITION REMAINDER (0-99)
        MOVC  0                 R1  ;   AS LONG INTEGER
        MOVC  2                 R2  ;   SETUP AS 2-DIGIT NUMBER
        MOVC  12                R5  ;   POSITION 12-13 IN BUFFER
        JMPI         S4  MI4100     ;   WRITE INTEGER
        MOV   TMONTH            R0  ;   GET MONTH-OF-YEAR
        JMPI         S4  MI3300     ;   PROVIDE NAME POINTER
        JMPI  &      S4  MIE200     ;E  MONTH OUT OF RANGE - MSC ERROR
        MVP   0.     X5         R0  ;   GET NAME BYTES
        MVP   1.     X5         R1  ;
        MOVC  TABBUF            R5  ;   GET BUFFER ADDR
        MOVL         R01 4.     X5  ;   SAVE NAME IN POS. 8-11
        MOVC  <:Z :>            R0  ;   GET CONSTANT
        MOV          R0  3.     X5  ;   WRITE IN POSITION 6-7
        CLR              7.     X5  ;   SET END MARK IN POSITION 14
        JMPI             RL5000     ;R  RETURN