|
|
DataMuseum.dkPresents historical artifacts from the history of: CR80 Hard and Floppy Disks |
This is an automatic "excavation" of a thematic subset of
See our Wiki for more about CR80 Hard and Floppy Disks Excavated with: AutoArchaeologist - Free & Open Source Software. |
top - metrics - download
Length: 5308 (0x14bc)
Types: TextFile
Names: »COMON_IF.I«
└─⟦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«
"-----------------------------------------------------------------------
"
"
" 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