DataMuseum.dk

Presents historical artifacts from the history of:

Philips Data Systems

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

See our Wiki for more about Philips Data Systems

Excavated with: AutoArchaeologist - Free & Open Source Software.


top - metrics - download

⟦8400918ab⟧

    Length: 5508 (0x1584)
    Notes: pts_type(SC)
    Names: »TIMER.SC«

Derivation

└─⟦48601905a⟧ Bits:30009668 Philips computer tape "600121"
    └─⟦this⟧ »M:DE10/TIMER.SC« 
└─⟦d2a299635⟧ Bits:30009698 Philips computer tape "600415"
    └─⟦this⟧ »M:DE10/TIMER.SC« 

PTS(SC)

	IDENT TIMER 	REL 10.0 80-03-14 870105041000

* 
* 
*************************************************** 
* 
*   PHILIPS TERMINAL SYSTEM PTS 
* 
*   TIMER = TIMER FUNCTIONS 
* 
* 
* 
* 
* 
* 
*************************************************** 
* 
* 
*   THIS MODULE CONTAINS TIMER LKM PROCESSORS AND 
*   THE FOLLOWING SUBROUTINES:
* 
*   -SETIME:  SET BLOCK IN TIMER QUEUE
*   -SETIMP:  SETIME + STORE TIMER POINTER
* 
* 
	EJECT			TIMER
* 
* 
*********** 
* ENTRIES * 
*********** 
* 
* 
	ENTRY	TIMER	LKM PROCESSOR
	ENTRY	SETIME	SET BLOCK IN TIMER QUEUE
	ENTRY	SETIMP	SETIME + STORE TIMER POINTER
	EJECT			TIMER
* 
* 
*********** 
* EXTRNALS *
************
* 
* 
	EXTRN	TDISP	DISPATCHER 
	EXTRN	LKMQDI	QUEUE TERMINAL AND DISPATCH 
	EXTRN	LKMRQE	LKM REQUEST ERROR 
	EXTRN	GETBLK	GET A FREE BLOCK
	EXTRN	FREBLK	SET A BLOCK FREE
	EXTRN	FNDTID	FIND TTAB ADDRESS 
	EXTRN	ACTDIS	ACTIVATE TASK AND DISPATCH
	EXTRN	SAVE8	SAVE 8 REGISTERS ON STACK
	EXTRN	TIMQUE	POINTER TO FIRST BLOCK IN TIMER QUEUE 
	EXTRN	IHRET8	RESTORE 8 REGISTERS FROM STACK
	EJECT			TIMER
* 
* 
***************************************** 
* 
*	CONDITIONAL ASSEMBLY
* 
***************************************** 
* 
*	A PROGRAM VERSION USING THE EXTENDED INSTRUCTION
*	SET IS OBTAINED BY SETTING CPU852 EQU 0.
* 
CPU852	EQU	1
* 
	EJECT			TIMER
* 
* 
*   T I M E R 
* 
*   THIS IS THE TIMER LKM PROCESSOR.
*   IT IS ENTERED FROM THE LKM HANDLER WITH THE FOLLOWING 
*   PARAMETERS: 
* 
*   1. PROGRAM DELAY
* 
*   A4 = 0
*   A5 = TTAB ADDRESS 
*   A8 = DELAY
* 
* 
*   2. TIMING AND ACTIVATION
* 
*   A1 = PARAMETER
*   A4 = DISPATCH ADDRESS OF PROGRAM TO BE ACTIVATED
*   A5 = TTAB ADDRESS OF CALLING PROGRAM
*   A7 = TERMINAL IDENTIFICATION OF PROGRAM TO BE ACTIVATED 
*   A8 = DELAY
* 
* 
TIMER	EQU	* 
	ADK	A4,0	SET CR
	RF(NZ)	TIM010	TIMING AND ACTIVATION
* 
	EJECT			TIMER
* 
*   PROGRAM DELAY 
* 
	LDR	A1,A5	SET PARAMETER
	ST	A8,PAR1+2	SET TIME
	CF	A15,SETIME
PAR1	DATA	DELAY,0 
	ABL	TDISP	GO TO DISPATCHER 
	EJECT			TIMER
* 
*   TIMING AND ACTIVATION 
* 
TIM010	EQU	*
	CF	A15,FNDTID	FIND TTAB ADDRESS
	ADK	A2,0	SET CR
	ABL(Z)	LKMRQE	TTAB NOT FOUND 
	LDR	A3,A2	IN BLOCK: A3=TTAB ADDRESS
	LDR	A2,A4	         A2=DISPATCH ADDRESS 
	CF	A15,GETBLK	         A1=PARAMETER
	LDR	A1,A4	SET BLOCK ADDRESS AS PARAMETER 
	ST	A8,PAR2+2	SET TIME
	CF	A15,SETIME
PAR2	DATA	TIMACT,0
* 
QUEDIS	EQU	*
	ABL	LKMQDI 
* 
	EJECT			TIMER
* 
* 
*   RETURN AFTER TIME OUT 
* 
*   1.PROGRAM DELAY 
* 
DELAY	EQU	* 
	LDR	A5,A1	SET TTAB ADDRESS 
	RB	QUEDIS	QUEUE TASK FOR DISPATCHING 
* 
*   2. TIMING AND ACTIVATION
* 
TIMACT	EQU	*
	LDR	A4,A1	GET BLOCK ADDRESS
	CF	A15,FREBLK	AND SET IT FREE
	LDR	A5,A3	SET TTAB ADDRESS 
	ABL	ACTDIS	ACTIVATE TASK AND DISPATCH
* 
	EJECT			TIMER
* 
* 
*   S E T I M E , S E T I M P 
* 
*   SUBROUTINE TO SET BLOCK IN TIMER QUEUE
*   AND IF SETIMP, STORE TIMER POINTER. 
* 
*   ENTRY PARAMETERS:-
* 
*   A1 = PARAMETER
*   A4 = IF SETIMP: TIMER POINTER ADDRESS 
*   P1 = DISPATCH ADDRESS AFTER TIME OUT
*   P2 = DELAY
* 
*   P1 AND P2 ARE STORED AFTER THE SUBROUTINE REQUEST.
* 
*   EXIT PARAMETER:-
* 
*   A4 = ADDRESS TO TIMER 
* 
* 
SETIME	EQU	*
	LDK	A4,0 
* 
SETIMP	EQU	*
	IFT	CPU852=1 
	CF	A15,SAVE8	SAVE A1-A8 ON STACK 
	XIF
* 
	IFT	CPU852=0 
	INH
	MSR	8,A15	SAVE A1-A8 ON STACK
	XIF
* 
	EJECT			TIMER
* 
* 
	LDR	A6,A4	SAVE TIMER POINTER ADDRESS 
	LDR	A3,A4
	LD	A5,20,A15	LOAD FIRST PARAMETER ADDRESS
	LDR*	A2,A5	DISPATCH ADDRESS IN A2
	ADK	A5,2 
	LDR*	A8,A5	TIME IN A8
	ADK	A5,2 
	ST	A5,20,A15	ADJUST PROGRAM COUNTER
	CF	A15,GETBLK	GET A FREE BLOCK 
	LDR	A2,A4
	C1R	A1,A8
	CF	A15,GETBLK	GET TIMER BLOCK
	LD	A1,TIMQUE 
	STR	A1,A4	SET BLOCK IN QUEUE 
	ST	A4,TIMQUE 
	ADK	A4,4 
	ST	A4,10,A15	SET TIMER ADDRESS A4 ON STACK 
	LDR	A6,A6
	RF(Z)	SETEND	-SETIME 
	STR	A4,A6	-SETIMP. STORE TIMER POINTER 
* 
	EJECT			TIMER
* 
* 
SETEND	EQU	*
	IFT	CPU852=1 
	ABL	IHRET8	RESTORE A1-A8 AND RETURN
	XIF
* 
	IFT	CPU852=0 
	MLR	8,A15	RESTORE A1-A8 FROM STACK...
	RTN	A15	...AND RETURN
	XIF
* 
* 
* 
	END

HexDump

0x0000…0034 (0, 0, 400)  Head {h00=0x0030, h01=0x0050, text=» IDENT TIMER  REL 10.0 80-03-14 870105041000«, t00=0x0000, t01=0x0004}
0x0034…003c              Head {h00=0x0004, h01=0x0050, t00=0x0000, t01=0x0038}
0x003c…0046              Head {h00=0x0006, h01=0x0050, text=»* «, t00=0x0000, t01=0x0040}
0x0046…0050              Head {h00=0x0006, h01=0x0050, text=»* «, t00=0x0000, t01=0x004a}
0x0050…008c              Head {h00=0x0038, h01=0x0050, text=»*************************************************** «, t00=0x0000, t01=0x0054}
0x008c…0096              Head {h00=0x0006, h01=0x0050, text=»* «, t00=0x0000, t01=0x0090}
0x0096…00be              Head {h00=0x0024, h01=0x0050, text=»*   PHILIPS TERMINAL SYSTEM PTS «, t00=0x0000, t01=0x009a}
0x00be…00c8              Head {h00=0x0006, h01=0x0050, text=»* «, t00=0x0000, t01=0x00c2}
0x00c8…00ec              Head {h00=0x0020, h01=0x0050, text=»*   TIMER = TIMER FUNCTIONS «, t00=0x0000, t01=0x00cc}
0x00ec…00f6              Head {h00=0x0006, h01=0x0050, text=»* «, t00=0x0000, t01=0x00f0}
0x00f6…0100              Head {h00=0x0006, h01=0x0050, text=»* «, t00=0x0000, t01=0x00fa}
0x0100…010a              Head {h00=0x0006, h01=0x0050, text=»* «, t00=0x0000, t01=0x0104}
0x010a…0114              Head {h00=0x0006, h01=0x0050, text=»* «, t00=0x0000, t01=0x010e}
0x0114…011e              Head {h00=0x0006, h01=0x0050, text=»* «, t00=0x0000, t01=0x0118}
0x011e…0128              Head {h00=0x0006, h01=0x0050, text=»* «, t00=0x0000, t01=0x0122}
0x0128…0164              Head {h00=0x0038, h01=0x0050, text=»*************************************************** «, t00=0x0000, t01=0x012c}
0x0164…016e              Head {h00=0x0006, h01=0x0050, text=»* «, t00=0x0000, t01=0x0168}
0x016e…0178              Head {h00=0x0006, h01=0x0050, text=»* «, t00=0x0000, t01=0x0172}
0x0178…01b2              Head {h00=0x0036, h01=0x0050, text=»*   THIS MODULE CONTAINS TIMER LKM PROCESSORS AND «, t00=0x0000, t01=0x017c}
0x01b2…01d8              Head {h00=0x0022, h01=0x0050, text=»*   THE FOLLOWING SUBROUTINES:«, t00=0x0001, t01=0x0026}
0x01d8…01e2              Head {h00=0x0006, h01=0x0050, text=»* «, t00=0x0001, t01=0x004c}
0x01e2…0210              Head {h00=0x002a, h01=0x0050, text=»*   -SETIME:  SET BLOCK IN TIMER QUEUE«, t00=0x0001, t01=0x0056}
0x0210…0242              Head {h00=0x002e, h01=0x0050, text=»*   -SETIMP:  SETIME + STORE TIMER POINTER«, t00=0x0001, t01=0x0084}
0x0242…024c              Head {h00=0x0006, h01=0x0050, text=»* «, t00=0x0001, t01=0x00b6}
0x024c…0256              Head {h00=0x0006, h01=0x0050, text=»* «, t00=0x0001, t01=0x00c0}
0x0256…026c              Head {h00=0x0012, h01=0x0050, text=» EJECT   TIMER«, t00=0x0001, t01=0x00ca}
0x026c…0276              Head {h00=0x0006, h01=0x0050, text=»* «, t00=0x0001, t01=0x00e0}
0x0276…0280              Head {h00=0x0006, h01=0x0050, text=»* «, t00=0x0001, t01=0x00ea}
0x0280…0294              Head {h00=0x0010, h01=0x0050, text=»*********** «, t00=0x0001, t01=0x00f4}
0x0294…02a8              Head {h00=0x0010, h01=0x0050, text=»* ENTRIES * «, t00=0x0001, t01=0x0108}
0x02a8…02bc              Head {h00=0x0010, h01=0x0050, text=»*********** «, t00=0x0001, t01=0x011c}
0x02bc…02c6              Head {h00=0x0006, h01=0x0050, text=»* «, t00=0x0001, t01=0x0130}
0x02c6…02d0              Head {h00=0x0006, h01=0x0050, text=»* «, t00=0x0001, t01=0x013a}
0x02d0…02f2              Head {h00=0x001e, h01=0x0050, text=» ENTRY TIMER LKM PROCESSOR«, t00=0x0001, t01=0x0144}
0x02f2…0320              Head {h00=0x002a, h01=0x0050, text=» ENTRY SETIME SET BLOCK IN TIMER QUEUE«, t00=0x0001, t01=0x0166}
0x0320…0352 (2, 0, 400)  Head {h00=0x002e, h01=0x0050, text=» ENTRY SETIMP SETIME + STORE TIMER POINTER«, t00=0x0002, t01=0x0004}
0x0352…0368              Head {h00=0x0012, h01=0x0050, text=» EJECT   TIMER«, t00=0x0002, t01=0x0036}
0x0368…0372              Head {h00=0x0006, h01=0x0050, text=»* «, t00=0x0002, t01=0x004c}
0x0372…037c              Head {h00=0x0006, h01=0x0050, text=»* «, t00=0x0002, t01=0x0056}
0x037c…0390              Head {h00=0x0010, h01=0x0050, text=»*********** «, t00=0x0002, t01=0x0060}
0x0390…03a4              Head {h00=0x0010, h01=0x0050, text=»* EXTRNALS *«, t00=0x0002, t01=0x0074}
0x03a4…03b8              Head {h00=0x0010, h01=0x0050, text=»************«, t00=0x0002, t01=0x0088}
0x03b8…03c2              Head {h00=0x0006, h01=0x0050, text=»* «, t00=0x0002, t01=0x009c}
0x03c2…03cc              Head {h00=0x0006, h01=0x0050, text=»* «, t00=0x0002, t01=0x00a6}
0x03cc…03ec              Head {h00=0x001c, h01=0x0050, text=» EXTRN TDISP DISPATCHER «, t00=0x0002, t01=0x00b0}
0x03ec…041e              Head {h00=0x002e, h01=0x0050, text=» EXTRN LKMQDI QUEUE TERMINAL AND DISPATCH «, t00=0x0002, t01=0x00d0}
0x041e…0446              Head {h00=0x0024, h01=0x0050, text=» EXTRN LKMRQE LKM REQUEST ERROR «, t00=0x0002, t01=0x0102}
0x0446…046c              Head {h00=0x0022, h01=0x0050, text=» EXTRN GETBLK GET A FREE BLOCK«, t00=0x0002, t01=0x012a}
0x046c…0492              Head {h00=0x0022, h01=0x0050, text=» EXTRN FREBLK SET A BLOCK FREE«, t00=0x0002, t01=0x0150}
0x0492…04ba              Head {h00=0x0024, h01=0x0050, text=» EXTRN FNDTID FIND TTAB ADDRESS «, t00=0x0002, t01=0x0176}
0x04ba…04ea              Head {h00=0x002c, h01=0x0050, text=» EXTRN ACTDIS ACTIVATE TASK AND DISPATCH«, t00=0x0003, t01=0x000e}
0x04ea…0518              Head {h00=0x002a, h01=0x0050, text=» EXTRN SAVE8 SAVE 8 REGISTERS ON STACK«, t00=0x0003, t01=0x003e}
0x0518…0554              Head {h00=0x0038, h01=0x0050, text=» EXTRN TIMQUE POINTER TO FIRST BLOCK IN TIMER QUEUE «, t00=0x0003, t01=0x006c}
0x0554…0588              Head {h00=0x0030, h01=0x0050, text=» EXTRN IHRET8 RESTORE 8 REGISTERS FROM STACK«, t00=0x0003, t01=0x00a8}
0x0588…059e              Head {h00=0x0012, h01=0x0050, text=» EJECT   TIMER«, t00=0x0003, t01=0x00dc}
0x059e…05a8              Head {h00=0x0006, h01=0x0050, text=»* «, t00=0x0003, t01=0x00f2}
0x05a8…05b2              Head {h00=0x0006, h01=0x0050, text=»* «, t00=0x0003, t01=0x00fc}
0x05b2…05e4              Head {h00=0x002e, h01=0x0050, text=»***************************************** «, t00=0x0003, t01=0x0106}
0x05e4…05ee              Head {h00=0x0006, h01=0x0050, text=»* «, t00=0x0003, t01=0x0138}
0x05ee…060c              Head {h00=0x001a, h01=0x0050, text=»* CONDITIONAL ASSEMBLY«, t00=0x0003, t01=0x0142}
0x060c…0616              Head {h00=0x0006, h01=0x0050, text=»* «, t00=0x0003, t01=0x0160}
0x0616…0648              Head {h00=0x002e, h01=0x0050, text=»***************************************** «, t00=0x0003, t01=0x016a}
0x0648…0652              Head {h00=0x0006, h01=0x0050, text=»* «, t00=0x0004, t01=0x000c}
0x0652…068c              Head {h00=0x0036, h01=0x0050, text=»* A PROGRAM VERSION USING THE EXTENDED INSTRUCTION«, t00=0x0004, t01=0x0016}
0x068c…06be              Head {h00=0x002e, h01=0x0050, text=»* SET IS OBTAINED BY SETTING CPU852 EQU 0.«, t00=0x0004, t01=0x0050}
0x06be…06c8              Head {h00=0x0006, h01=0x0050, text=»* «, t00=0x0004, t01=0x0082}
0x06c8…06dc              Head {h00=0x0010, h01=0x0050, text=»CPU852 EQU 1«, t00=0x0004, t01=0x008c}
0x06dc…06e6              Head {h00=0x0006, h01=0x0050, text=»* «, t00=0x0004, t01=0x00a0}
0x06e6…06fc              Head {h00=0x0012, h01=0x0050, text=» EJECT   TIMER«, t00=0x0004, t01=0x00aa}
0x06fc…0706              Head {h00=0x0006, h01=0x0050, text=»* «, t00=0x0004, t01=0x00c0}
0x0706…0710              Head {h00=0x0006, h01=0x0050, text=»* «, t00=0x0004, t01=0x00ca}
0x0710…0726              Head {h00=0x0012, h01=0x0050, text=»*   T I M E R «, t00=0x0004, t01=0x00d4}
0x0726…0730              Head {h00=0x0006, h01=0x0050, text=»* «, t00=0x0004, t01=0x00ea}
0x0730…075c              Head {h00=0x0028, h01=0x0050, text=»*   THIS IS THE TIMER LKM PROCESSOR.«, t00=0x0004, t01=0x00f4}
0x075c…079e              Head {h00=0x003e, h01=0x0050, text=»*   IT IS ENTERED FROM THE LKM HANDLER WITH THE FOLLOWING «, t00=0x0004, t01=0x0120}
0x079e…07b6              Head {h00=0x0014, h01=0x0050, text=»*   PARAMETERS: «, t00=0x0004, t01=0x0162}
0x07b6…07c0              Head {h00=0x0006, h01=0x0050, text=»* «, t00=0x0004, t01=0x017a}
0x07c0…07dc              Head {h00=0x0018, h01=0x0050, text=»*   1. PROGRAM DELAY«, t00=0x0004, t01=0x0184}
0x07dc…07e6              Head {h00=0x0006, h01=0x0050, text=»* «, t00=0x0005, t01=0x0010}
0x07e6…07f8              Head {h00=0x000e, h01=0x0050, text=»*   A4 = 0«, t00=0x0005, t01=0x001a}
0x07f8…0816              Head {h00=0x001a, h01=0x0050, text=»*   A5 = TTAB ADDRESS «, t00=0x0005, t01=0x002c}
0x0816…082c              Head {h00=0x0012, h01=0x0050, text=»*   A8 = DELAY«, t00=0x0005, t01=0x004a}
0x082c…0836              Head {h00=0x0006, h01=0x0050, text=»* «, t00=0x0005, t01=0x0060}
0x0836…0840              Head {h00=0x0006, h01=0x0050, text=»* «, t00=0x0005, t01=0x006a}
0x0840…0864              Head {h00=0x0020, h01=0x0050, text=»*   2. TIMING AND ACTIVATION«, t00=0x0005, t01=0x0074}
0x0864…086e              Head {h00=0x0006, h01=0x0050, text=»* «, t00=0x0005, t01=0x0098}
0x086e…0888              Head {h00=0x0016, h01=0x0050, text=»*   A1 = PARAMETER«, t00=0x0005, t01=0x00a2}
0x0888…08c4              Head {h00=0x0038, h01=0x0050, text=»*   A4 = DISPATCH ADDRESS OF PROGRAM TO BE ACTIVATED«, t00=0x0005, t01=0x00bc}
0x08c4…08f4              Head {h00=0x002c, h01=0x0050, text=»*   A5 = TTAB ADDRESS OF CALLING PROGRAM«, t00=0x0005, t01=0x00f8}
0x08f4…0938              Head {h00=0x0040, h01=0x0050, text=»*   A7 = TERMINAL IDENTIFICATION OF PROGRAM TO BE ACTIVATED «, t00=0x0005, t01=0x0128}
0x0938…094e              Head {h00=0x0012, h01=0x0050, text=»*   A8 = DELAY«, t00=0x0005, t01=0x016c}
0x094e…0958              Head {h00=0x0006, h01=0x0050, text=»* «, t00=0x0005, t01=0x0182}
0x0958…0962              Head {h00=0x0006, h01=0x0050, text=»* «, t00=0x0005, t01=0x018c}
0x0962…0976              Head {h00=0x0010, h01=0x0050, text=»TIMER EQU * «, t00=0x0006, t01=0x0008}
0x0976…098e              Head {h00=0x0014, h01=0x0050, text=» ADK A4,0 SET CR«, t00=0x0006, t01=0x001c}
0x098e…09ba              Head {h00=0x0028, h01=0x0050, text=» RF(NZ) TIM010 TIMING AND ACTIVATION«, t00=0x0006, t01=0x0034}
0x09ba…09c4              Head {h00=0x0006, h01=0x0050, text=»* «, t00=0x0006, t01=0x0060}
0x09c4…09da              Head {h00=0x0012, h01=0x0050, text=» EJECT   TIMER«, t00=0x0006, t01=0x006a}
0x09da…09e4              Head {h00=0x0006, h01=0x0050, text=»* «, t00=0x0006, t01=0x0080}
0x09e4…09fe              Head {h00=0x0016, h01=0x0050, text=»*   PROGRAM DELAY «, t00=0x0006, t01=0x008a}
0x09fe…0a08              Head {h00=0x0006, h01=0x0050, text=»* «, t00=0x0006, t01=0x00a4}
0x0a08…0a28              Head {h00=0x001c, h01=0x0050, text=» LDR A1,A5 SET PARAMETER«, t00=0x0006, t01=0x00ae}
0x0a28…0a46              Head {h00=0x001a, h01=0x0050, text=» ST A8,PAR1+2 SET TIME«, t00=0x0006, t01=0x00ce}
0x0a46…0a5c              Head {h00=0x0012, h01=0x0050, text=» CF A15,SETIME«, t00=0x0006, t01=0x00ec}
0x0a5c…0a76              Head {h00=0x0016, h01=0x0050, text=»PAR1 DATA DELAY,0 «, t00=0x0006, t01=0x0102}
0x0a76…0a9a              Head {h00=0x0020, h01=0x0050, text=» ABL TDISP GO TO DISPATCHER «, t00=0x0006, t01=0x011c}
0x0a9a…0ab0              Head {h00=0x0012, h01=0x0050, text=» EJECT   TIMER«, t00=0x0006, t01=0x0140}
0x0ab0…0aba              Head {h00=0x0006, h01=0x0050, text=»* «, t00=0x0006, t01=0x0156}
0x0aba…0adc              Head {h00=0x001e, h01=0x0050, text=»*   TIMING AND ACTIVATION «, t00=0x0006, t01=0x0160}
0x0adc…0ae6              Head {h00=0x0006, h01=0x0050, text=»* «, t00=0x0006, t01=0x0182}
0x0ae6…0afa              Head {h00=0x0010, h01=0x0050, text=»TIM010 EQU *«, t00=0x0006, t01=0x018c}
0x0afa…0b22              Head {h00=0x0024, h01=0x0050, text=» CF A15,FNDTID FIND TTAB ADDRESS«, t00=0x0007, t01=0x0010}
0x0b22…0b3a              Head {h00=0x0014, h01=0x0050, text=» ADK A2,0 SET CR«, t00=0x0007, t01=0x0038}
0x0b3a…0b60              Head {h00=0x0022, h01=0x0050, text=» ABL(Z) LKMRQE TTAB NOT FOUND «, t00=0x0007, t01=0x0050}
0x0b60…0b8c              Head {h00=0x0028, h01=0x0050, text=» LDR A3,A2 IN BLOCK: A3=TTAB ADDRESS«, t00=0x0007, t01=0x0076}
0x0b8c…0bbc              Head {h00=0x002c, h01=0x0050, text=» LDR A2,A4          A2=DISPATCH ADDRESS «, t00=0x0007, t01=0x00a2}
0x0bbc…0be8              Head {h00=0x0028, h01=0x0050, text=» CF A15,GETBLK          A1=PARAMETER«, t00=0x0007, t01=0x00d2}
0x0be8…0c1a              Head {h00=0x002e, h01=0x0050, text=» LDR A1,A4 SET BLOCK ADDRESS AS PARAMETER «, t00=0x0007, t01=0x00fe}
0x0c1a…0c38              Head {h00=0x001a, h01=0x0050, text=» ST A8,PAR2+2 SET TIME«, t00=0x0007, t01=0x0130}
0x0c38…0c4e              Head {h00=0x0012, h01=0x0050, text=» CF A15,SETIME«, t00=0x0007, t01=0x014e}
0x0c4e…0c68              Head {h00=0x0016, h01=0x0050, text=»PAR2 DATA TIMACT,0«, t00=0x0007, t01=0x0164}
0x0c68…0c72              Head {h00=0x0006, h01=0x0050, text=»* «, t00=0x0007, t01=0x017e}
0x0c72…0c86              Head {h00=0x0010, h01=0x0050, text=»QUEDIS EQU *«, t00=0x0007, t01=0x0188}
0x0c86…0c9a              Head {h00=0x0010, h01=0x0050, text=» ABL LKMQDI «, t00=0x0008, t01=0x000c}
0x0c9a…0ca4              Head {h00=0x0006, h01=0x0050, text=»* «, t00=0x0008, t01=0x0020}
0x0ca4…0cba              Head {h00=0x0012, h01=0x0050, text=» EJECT   TIMER«, t00=0x0008, t01=0x002a}
0x0cba…0cc4              Head {h00=0x0006, h01=0x0050, text=»* «, t00=0x0008, t01=0x0040}
0x0cc4…0cce              Head {h00=0x0006, h01=0x0050, text=»* «, t00=0x0008, t01=0x004a}
0x0cce…0cf0              Head {h00=0x001e, h01=0x0050, text=»*   RETURN AFTER TIME OUT «, t00=0x0008, t01=0x0054}
0x0cf0…0cfa              Head {h00=0x0006, h01=0x0050, text=»* «, t00=0x0008, t01=0x0076}
0x0cfa…0d16              Head {h00=0x0018, h01=0x0050, text=»*   1.PROGRAM DELAY «, t00=0x0008, t01=0x0080}
0x0d16…0d20              Head {h00=0x0006, h01=0x0050, text=»* «, t00=0x0008, t01=0x009c}
0x0d20…0d34              Head {h00=0x0010, h01=0x0050, text=»DELAY EQU * «, t00=0x0008, t01=0x00a6}
0x0d34…0d58              Head {h00=0x0020, h01=0x0050, text=» LDR A5,A1 SET TTAB ADDRESS «, t00=0x0008, t01=0x00ba}
0x0d58…0d86              Head {h00=0x002a, h01=0x0050, text=» RB QUEDIS QUEUE TASK FOR DISPATCHING «, t00=0x0008, t01=0x00de}
0x0d86…0d90              Head {h00=0x0006, h01=0x0050, text=»* «, t00=0x0008, t01=0x010c}
0x0d90…0db4              Head {h00=0x0020, h01=0x0050, text=»*   2. TIMING AND ACTIVATION«, t00=0x0008, t01=0x0116}
0x0db4…0dbe              Head {h00=0x0006, h01=0x0050, text=»* «, t00=0x0008, t01=0x013a}
0x0dbe…0dd2              Head {h00=0x0010, h01=0x0050, text=»TIMACT EQU *«, t00=0x0008, t01=0x0144}
0x0dd2…0df6              Head {h00=0x0020, h01=0x0050, text=» LDR A4,A1 GET BLOCK ADDRESS«, t00=0x0008, t01=0x0158}
0x0df6…0e1c              Head {h00=0x0022, h01=0x0050, text=» CF A15,FREBLK AND SET IT FREE«, t00=0x0008, t01=0x017c}
0x0e1c…0e40              Head {h00=0x0020, h01=0x0050, text=» LDR A5,A3 SET TTAB ADDRESS «, t00=0x0009, t01=0x0012}
0x0e40…0e6e              Head {h00=0x002a, h01=0x0050, text=» ABL ACTDIS ACTIVATE TASK AND DISPATCH«, t00=0x0009, t01=0x0036}
0x0e6e…0e78              Head {h00=0x0006, h01=0x0050, text=»* «, t00=0x0009, t01=0x0064}
0x0e78…0e8e              Head {h00=0x0012, h01=0x0050, text=» EJECT   TIMER«, t00=0x0009, t01=0x006e}
0x0e8e…0e98              Head {h00=0x0006, h01=0x0050, text=»* «, t00=0x0009, t01=0x0084}
0x0e98…0ea2              Head {h00=0x0006, h01=0x0050, text=»* «, t00=0x0009, t01=0x008e}
0x0ea2…0ec8              Head {h00=0x0022, h01=0x0050, text=»*   S E T I M E , S E T I M P «, t00=0x0009, t01=0x0098}
0x0ec8…0ed2              Head {h00=0x0006, h01=0x0050, text=»* «, t00=0x0009, t01=0x00be}
0x0ed2…0f04              Head {h00=0x002e, h01=0x0050, text=»*   SUBROUTINE TO SET BLOCK IN TIMER QUEUE«, t00=0x0009, t01=0x00c8}
0x0f04…0f34              Head {h00=0x002c, h01=0x0050, text=»*   AND IF SETIMP, STORE TIMER POINTER. «, t00=0x0009, t01=0x00fa}
0x0f34…0f3e              Head {h00=0x0006, h01=0x0050, text=»* «, t00=0x0009, t01=0x012a}
0x0f3e…0f5c              Head {h00=0x001a, h01=0x0050, text=»*   ENTRY PARAMETERS:-«, t00=0x0009, t01=0x0134}
0x0f5c…0f66              Head {h00=0x0006, h01=0x0050, text=»* «, t00=0x0009, t01=0x0152}
0x0f66…0f80              Head {h00=0x0016, h01=0x0050, text=»*   A1 = PARAMETER«, t00=0x0009, t01=0x015c}
0x0f80…0fb2              Head {h00=0x002e, h01=0x0050, text=»*   A4 = IF SETIMP: TIMER POINTER ADDRESS «, t00=0x0009, t01=0x0176}
0x0fb2…0fe2              Head {h00=0x002c, h01=0x0050, text=»*   P1 = DISPATCH ADDRESS AFTER TIME OUT«, t00=0x000a, t01=0x0018}
0x0fe2…0ff8              Head {h00=0x0012, h01=0x0050, text=»*   P2 = DELAY«, t00=0x000a, t01=0x0048}
0x0ff8…1002              Head {h00=0x0006, h01=0x0050, text=»* «, t00=0x000a, t01=0x005e}
0x1002…1040              Head {h00=0x003a, h01=0x0050, text=»*   P1 AND P2 ARE STORED AFTER THE SUBROUTINE REQUEST.«, t00=0x000a, t01=0x0068}
0x1040…104a              Head {h00=0x0006, h01=0x0050, text=»* «, t00=0x000a, t01=0x00a6}
0x104a…1066              Head {h00=0x0018, h01=0x0050, text=»*   EXIT PARAMETER:-«, t00=0x000a, t01=0x00b0}
0x1066…1070              Head {h00=0x0006, h01=0x0050, text=»* «, t00=0x000a, t01=0x00cc}
0x1070…1092              Head {h00=0x001e, h01=0x0050, text=»*   A4 = ADDRESS TO TIMER «, t00=0x000a, t01=0x00d6}
0x1092…109c              Head {h00=0x0006, h01=0x0050, text=»* «, t00=0x000a, t01=0x00f8}
0x109c…10a6              Head {h00=0x0006, h01=0x0050, text=»* «, t00=0x000a, t01=0x0102}
0x10a6…10ba              Head {h00=0x0010, h01=0x0050, text=»SETIME EQU *«, t00=0x000a, t01=0x010c}
0x10ba…10cc              Head {h00=0x000e, h01=0x0050, text=» LDK A4,0 «, t00=0x000a, t01=0x0120}
0x10cc…10d6              Head {h00=0x0006, h01=0x0050, text=»* «, t00=0x000a, t01=0x0132}
0x10d6…10ea              Head {h00=0x0010, h01=0x0050, text=»SETIMP EQU *«, t00=0x000a, t01=0x013c}
0x10ea…1100              Head {h00=0x0012, h01=0x0050, text=» IFT CPU852=1 «, t00=0x000a, t01=0x0150}
0x1100…112a              Head {h00=0x0026, h01=0x0050, text=» CF A15,SAVE8 SAVE A1-A8 ON STACK «, t00=0x000a, t01=0x0166}
0x112a…1136              Head {h00=0x0008, h01=0x0050, text=» XIF«, t00=0x000a, t01=0x0190}
0x1136…1140              Head {h00=0x0006, h01=0x0050, text=»* «, t00=0x000b, t01=0x000c}
0x1140…1156              Head {h00=0x0012, h01=0x0050, text=» IFT CPU852=0 «, t00=0x000b, t01=0x0016}
0x1156…1162              Head {h00=0x0008, h01=0x0050, text=» INH«, t00=0x000b, t01=0x002c}
0x1162…1188              Head {h00=0x0022, h01=0x0050, text=» MSR 8,A15 SAVE A1-A8 ON STACK«, t00=0x000b, t01=0x0038}
0x1188…1194              Head {h00=0x0008, h01=0x0050, text=» XIF«, t00=0x000b, t01=0x005e}
0x1194…119e              Head {h00=0x0006, h01=0x0050, text=»* «, t00=0x000b, t01=0x006a}
0x119e…11b4              Head {h00=0x0012, h01=0x0050, text=» EJECT   TIMER«, t00=0x000b, t01=0x0074}
0x11b4…11be              Head {h00=0x0006, h01=0x0050, text=»* «, t00=0x000b, t01=0x008a}
0x11be…11c8              Head {h00=0x0006, h01=0x0050, text=»* «, t00=0x000b, t01=0x0094}
0x11c8…11f6              Head {h00=0x002a, h01=0x0050, text=» LDR A6,A4 SAVE TIMER POINTER ADDRESS «, t00=0x000b, t01=0x009e}
0x11f6…1208              Head {h00=0x000e, h01=0x0050, text=» LDR A3,A4«, t00=0x000b, t01=0x00cc}
0x1208…123a              Head {h00=0x002e, h01=0x0050, text=» LD A5,20,A15 LOAD FIRST PARAMETER ADDRESS«, t00=0x000b, t01=0x00de}
0x123a…1264              Head {h00=0x0026, h01=0x0050, text=» LDR* A2,A5 DISPATCH ADDRESS IN A2«, t00=0x000b, t01=0x0110}
0x1264…1276              Head {h00=0x000e, h01=0x0050, text=» ADK A5,2 «, t00=0x000b, t01=0x013a}
0x1276…1294              Head {h00=0x001a, h01=0x0050, text=» LDR* A8,A5 TIME IN A8«, t00=0x000b, t01=0x014c}
0x1294…12a6              Head {h00=0x000e, h01=0x0050, text=» ADK A5,2 «, t00=0x000b, t01=0x016a}
0x12a6…12d2              Head {h00=0x0028, h01=0x0050, text=» ST A5,20,A15 ADJUST PROGRAM COUNTER«, t00=0x000b, t01=0x017c}
0x12d2…12fa              Head {h00=0x0024, h01=0x0050, text=» CF A15,GETBLK GET A FREE BLOCK «, t00=0x000c, t01=0x0018}
0x12fa…130c              Head {h00=0x000e, h01=0x0050, text=» LDR A2,A4«, t00=0x000c, t01=0x0040}
0x130c…131e              Head {h00=0x000e, h01=0x0050, text=» C1R A1,A8«, t00=0x000c, t01=0x0052}
0x131e…1344              Head {h00=0x0022, h01=0x0050, text=» CF A15,GETBLK GET TIMER BLOCK«, t00=0x000c, t01=0x0064}
0x1344…135a              Head {h00=0x0012, h01=0x0050, text=» LD A1,TIMQUE «, t00=0x000c, t01=0x008a}
0x135a…1380              Head {h00=0x0022, h01=0x0050, text=» STR A1,A4 SET BLOCK IN QUEUE «, t00=0x000c, t01=0x00a0}
0x1380…1396              Head {h00=0x0012, h01=0x0050, text=» ST A4,TIMQUE «, t00=0x000c, t01=0x00c6}
0x1396…13a8              Head {h00=0x000e, h01=0x0050, text=» ADK A4,4 «, t00=0x000c, t01=0x00dc}
0x13a8…13dc              Head {h00=0x0030, h01=0x0050, text=» ST A4,10,A15 SET TIMER ADDRESS A4 ON STACK «, t00=0x000c, t01=0x00ee}
0x13dc…13ee              Head {h00=0x000e, h01=0x0050, text=» LDR A6,A6«, t00=0x000c, t01=0x0122}
0x13ee…140c              Head {h00=0x001a, h01=0x0050, text=» RF(Z) SETEND -SETIME «, t00=0x000c, t01=0x0134}
0x140c…143c              Head {h00=0x002c, h01=0x0050, text=» STR A4,A6 -SETIMP. STORE TIMER POINTER «, t00=0x000c, t01=0x0152}
0x143c…1446              Head {h00=0x0006, h01=0x0050, text=»* «, t00=0x000c, t01=0x0182}
0x1446…145c              Head {h00=0x0012, h01=0x0050, text=» EJECT   TIMER«, t00=0x000c, t01=0x018c}
0x145c…1466              Head {h00=0x0006, h01=0x0050, text=»* «, t00=0x000d, t01=0x0012}
0x1466…1470              Head {h00=0x0006, h01=0x0050, text=»* «, t00=0x000d, t01=0x001c}
0x1470…1484              Head {h00=0x0010, h01=0x0050, text=»SETEND EQU *«, t00=0x000d, t01=0x0026}
0x1484…149a              Head {h00=0x0012, h01=0x0050, text=» IFT CPU852=1 «, t00=0x000d, t01=0x003a}
0x149a…14c6              Head {h00=0x0028, h01=0x0050, text=» ABL IHRET8 RESTORE A1-A8 AND RETURN«, t00=0x000d, t01=0x0050}
0x14c6…14d2              Head {h00=0x0008, h01=0x0050, text=» XIF«, t00=0x000d, t01=0x007c}
0x14d2…14dc              Head {h00=0x0006, h01=0x0050, text=»* «, t00=0x000d, t01=0x0088}
0x14dc…14f2              Head {h00=0x0012, h01=0x0050, text=» IFT CPU852=0 «, t00=0x000d, t01=0x0092}
0x14f2…1520              Head {h00=0x002a, h01=0x0050, text=» MLR 8,A15 RESTORE A1-A8 FROM STACK...«, t00=0x000d, t01=0x00a8}
0x1520…153e              Head {h00=0x001a, h01=0x0050, text=» RTN A15 ...AND RETURN«, t00=0x000d, t01=0x00d6}
0x153e…154a              Head {h00=0x0008, h01=0x0050, text=» XIF«, t00=0x000d, t01=0x00f4}
0x154a…1554              Head {h00=0x0006, h01=0x0050, text=»* «, t00=0x000d, t01=0x0100}
0x1554…155e              Head {h00=0x0006, h01=0x0050, text=»* «, t00=0x000d, t01=0x010a}
0x155e…1568              Head {h00=0x0006, h01=0x0050, text=»* «, t00=0x000d, t01=0x0114}
0x1568…1574              Head {h00=0x0008, h01=0x0050, text=» END«, t00=0x000d, t01=0x011e}
0x1574…1578              Head {h00=0x4004, h01=0x0000}
0x1578…157c              00 0d 01 2a                                                                                                                                                                                                                                       ┆   *┆
0x157c…1584 (14, 1, 8)   20 04 00 00 00 0e 00 04                                                                                                                                                                                                                           ┆        ┆

Reduced view