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

⟦72e4e857a⟧ TextFile

    Length: 5308 (0x14bc)
    Types: TextFile
    Names: »COMON_IF.I«

Derivation

└─⟦8c095a7f3⟧ Bits:30005798 CR80 Disc Pack ( Vol ILS systemdisk XAMOS TOS 10:01 hard boot #43c 19-7-87/JFJ )
    └─ ⟦this⟧ »SYSTEMS.D!XAMOS.D!GEN850501.D!FILE.D!FMS.D!ALTFMS.D!GENS.D!COMON_IF.I« 
    └─ ⟦this⟧ »SYSTEMS.D!XAMOS.D!GEN850501.D!FILE.D!FMS.D!FILSYS.D!GENS.D!COMON_IF.I« 
    └─ ⟦this⟧ »SYSTEMS.D!XAMOS.D!GEN850501.D!FILE.D!FMS.D!MY_SYSTEM.D!GENS.D!COMON_IF.I« 
    └─ ⟦this⟧ »SYSTEMS.D!XAMOS.D!GEN850501.D!FILE.D!FMS.D!QUATTRO_MUX.D!GENS.D!COMON_IF.I« 
    └─ ⟦this⟧ »SYSTEMS.D!XAMOS.D!GEN850501.D!FILE.D!FMS.D!SINGLE.D!GENS.D!COMON_IF.I« 
    └─ ⟦this⟧ »SYSTEMS.D!XAMOS.D!GEN850501.D!FMS.D!ALTFMS.D!GENS.D!COMON_IF.I« 
    └─ ⟦this⟧ »SYSTEMS.D!XAMOS.D!GEN850501.D!FMS.D!FILSYS.D!GENS.D!COMON_IF.I« 
    └─ ⟦this⟧ »SYSTEMS.D!XAMOS.D!GEN850501.D!FMS.D!MY_SYSTEM.D!GENS.D!COMON_IF.I« 
    └─ ⟦this⟧ »SYSTEMS.D!XAMOS.D!GEN850501.D!FMS.D!QUATTRO_MUX.D!GENS.D!COMON_IF.I« 
    └─ ⟦this⟧ »SYSTEMS.D!XAMOS.D!GEN850501.D!FMS.D!SINGLE.D!GENS.D!COMON_IF.I« 
└─⟦c2e810e96⟧ Bits:30005799 CR80 Disc Pack ( XAMOS 841129 ILS TOS 10-01 System Disk Tilhører ILS/MSG hard boot boot entry #43c )
    └─ ⟦this⟧ »SYSTEMS.D!XAMOS.D!GEN850501.D!FILE.D!FMS.D!ALTFMS.D!GENS.D!COMON_IF.I« 
    └─ ⟦this⟧ »SYSTEMS.D!XAMOS.D!GEN850501.D!FILE.D!FMS.D!FILSYS.D!GENS.D!COMON_IF.I« 
    └─ ⟦this⟧ »SYSTEMS.D!XAMOS.D!GEN850501.D!FILE.D!FMS.D!MY_SYSTEM.D!GENS.D!COMON_IF.I« 
    └─ ⟦this⟧ »SYSTEMS.D!XAMOS.D!GEN850501.D!FILE.D!FMS.D!QUATTRO_MUX.D!GENS.D!COMON_IF.I« 
    └─ ⟦this⟧ »SYSTEMS.D!XAMOS.D!GEN850501.D!FILE.D!FMS.D!SINGLE.D!GENS.D!COMON_IF.I« 
    └─ ⟦this⟧ »SYSTEMS.D!XAMOS.D!GEN850501.D!FMS.D!ALTFMS.D!GENS.D!COMON_IF.I« 
    └─ ⟦this⟧ »SYSTEMS.D!XAMOS.D!GEN850501.D!FMS.D!FILSYS.D!GENS.D!COMON_IF.I« 
    └─ ⟦this⟧ »SYSTEMS.D!XAMOS.D!GEN850501.D!FMS.D!MY_SYSTEM.D!GENS.D!COMON_IF.I« 
    └─ ⟦this⟧ »SYSTEMS.D!XAMOS.D!GEN850501.D!FMS.D!QUATTRO_MUX.D!GENS.D!COMON_IF.I« 
    └─ ⟦this⟧ »SYSTEMS.D!XAMOS.D!GEN850501.D!FMS.D!SINGLE.D!GENS.D!COMON_IF.I« 
└─⟦e0c43619c⟧ Bits:30005797 CR80 Disc pack ( Vol:FNJ1 861029/EC CR80 S/W Package II+III+IV+V+VII )
    └─ ⟦this⟧ »CSP005_V0501.D!CSS920.D!LINK.D!ERP_SINGLE.D!GENS.D!COMON_IF.I« 
    └─ ⟦this⟧ »CSP005_V0501.D!CSS920.D!LINK.D!MX.D!GENS.D!COMON_IF.I« 
    └─ ⟦this⟧ »CSP005_V0501.D!CSS920.D!LINK.D!MX_CRAM.D!GENS.D!COMON_IF.I« 
    └─ ⟦this⟧ »CSP005_V0501.D!CSS920.D!LINK.D!MX_DMA.D!GENS.D!COMON_IF.I« 
    └─ ⟦this⟧ »CSP005_V0501.D!CSS920.D!LINK.D!MY_SYSTEM.D!GENS.D!COMON_IF.I« 
    └─ ⟦this⟧ »CSP005_V0501.D!CSS920.D!LINK.D!SINGLE.D!GENS.D!COMON_IF.I« 

TextFile

"-----------------------------------------------------------------------
"
"
"  MODULE NAME:      COROUTINE MONITOR IMPORT MODULE
"  MODULE ID NMB:    CSS/...
"  MODULE VERSION:   0100
"  MODULE TYPE:      IMPORT MODULE & PREFIX
"  MERGE  FILES:     -
"
"  SPECIFICATIONS:   -
"  AUTHOR/DATE:      JAS/830926
"
"  DELIVERABLE:      -
"  SOURCE LANGUAGE:  SWELL
"  COMPILE COMPUTER: CR80
"  TARGET COMPUTER:  CR80/CR80MX
"  OPER. SYSTEM:     AMOS/XAMOS/MX-AMOS
"
"-----------------------------------------------------------------------
"
"  CHANGE RECORD
"
"  VERSION    AUTHOR/DATE    DESCRIPTION OF CHANGE
"  -------    -----------    ---------------------
"
"     0100    JAS/830926     Initial Work Version.
"
"-----------------------------------------------------------------------
"PAGE«ff»
type  op_type = integer;          "used to destinguish between messages
                                  "answers and internal signals at a ge
                                  "neral semaphore

type  sem_id  = integer;          "semaphore identification (its address)

type  coroutine_link = absptr;    "to the next element in a queue

type  coroutine_queue =           "queue of coroutines or operations
        record
          first:  coroutine_link; "queue head
          last:   coroutine_link; "queue tail
        end;

type  coroutine_descriptor =
        record
          link:   coroutine_link; "to the next coroutine descriptor
          save:   array[0..7] of integer; "register save array
        end;

type  semaphore =
        record
          q:      coroutine_queue;"queue of coroutines waiting at (or
                                  "operations signalled to) this sem
          val:    integer;        "the value of this semaphore
        end;

type  internal_operation =
        record
          link:   coroutine_link; "link to other operations which are
                                  "queued at the same semaphore
"        <user defined fields>     the first of which should be op_type
"                                  if the operation will be delivered
"                                  at a general semaphore
        end;

type  external_operation =
        record
          link:   coroutine_link; "in a queue of operations
          opn:    op_type;        "type of operation delivered (user def)
          sem:    sem_id;         "address of semaphore at which this ex
                                  "ternal operation shall be delivered
          evt:    event;          "identification of associated event
          buf:    message_buffer; "amos message buffer
        end;
"page«ff»
               "==========================="
               "  INTERFACE PROCEDURES TO  "
               "     COROUTINE MONITOR     "
               "==========================="



import procedure cm_signal
"****" "================="
                    (r5;   "  C K   semaphore address
                     r7;   "  - R   coroutine desc addr
                     r6);  "  - D   link



import procedure cm_wait
"****" "==============="
                    (r5;   "  C K   semaphore addr
                     r7;   "  - R   coroutine desc addr
                     r6);  "  - D   link



import procedure signal_op
"****" "================="
                    (r4;   "  C K   internal op addr
                     r5;   "  C K   semaphore addr
                     r7;   "  - R   coroutine desc addr
                     r6);  "  - D   link



import procedure wait_op
"****" "==============="
                    (r4;   "  - R   internal op addr
                     r5;   "  C K   semaphore addr
                     r7;   "  - R   coroutine desc addr
                     r6);  "  - D   link



import procedure sem_send_sys_mes
"****" "========================"
                    (r0;   "  C K   receiver name addr
                     r4;   "  C K   external operation addr
                     r7;   "  - R   coroutine desc addr
                     r6);  "  - D   link



import procedure sem_alloc_sys_mes
"****" "========================="
                    (r4;   "  C K   external operation addr
                     r7;   "  - R   coroutine desc addr
                     r6);  "  - D   link



import procedure cm_send_sys_ans
"****" "======================="
                    (r4;   "  C K   external operation addr
                     r7;   "  - R   coroutine desc addr
                     r6);  "  - D   link



import procedure cm_init
"****" "==============="
                    (r0;   "  C K   coroutine desc addr
                     r7;   "  - R   coroutine desc addr
                     r6);  "  - D   link



import procedure cm_add
"****" "=============="
                    (r0;   "  C K   new coroutine desc addr
                     r1;   "  C K   coroutine start addr
                     r7;   "  - R   active coroutine desc addr
                     r6);  "  - D   link



import procedure sem_init
"****" "================"
                    (r5;   "  C K   semaphore address
                     r7;   "  - R   coroutine desc addr
                     r6);  "  - D   link



import procedure current_coroutine
"****" "========================="
                    (r7;   "  - R   coroutine desc addr
                     r6);  "  - D   link