annotate level2/modules/kernel/fclrblk.asm @ 1631:ec6fb5543b22

Robert Gault's modifications for correcting timing errors
author boisy
date Mon, 12 Jul 2004 01:38:08 +0000
parents 1da8ab9ba433
children 039ddb7c8ad7
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
1345
1da8ab9ba433 Added consistent comments to each system call
boisy
parents: 1145
diff changeset
1 **************************************************
1da8ab9ba433 Added consistent comments to each system call
boisy
parents: 1145
diff changeset
2 * System Call: F$ClrBlk
1da8ab9ba433 Added consistent comments to each system call
boisy
parents: 1145
diff changeset
3 *
1da8ab9ba433 Added consistent comments to each system call
boisy
parents: 1145
diff changeset
4 * Function: Clear RAM blocks
1da8ab9ba433 Added consistent comments to each system call
boisy
parents: 1145
diff changeset
5 *
1da8ab9ba433 Added consistent comments to each system call
boisy
parents: 1145
diff changeset
6 * Input: B = Number of blocks
1da8ab9ba433 Added consistent comments to each system call
boisy
parents: 1145
diff changeset
7 * U = Address of first block
1da8ab9ba433 Added consistent comments to each system call
boisy
parents: 1145
diff changeset
8 *
1da8ab9ba433 Added consistent comments to each system call
boisy
parents: 1145
diff changeset
9 * Output: None
1da8ab9ba433 Added consistent comments to each system call
boisy
parents: 1145
diff changeset
10 *
1da8ab9ba433 Added consistent comments to each system call
boisy
parents: 1145
diff changeset
11 * Error: CC = C bit set; B = error code
1da8ab9ba433 Added consistent comments to each system call
boisy
parents: 1145
diff changeset
12 *
1145
ca83286ded5b Start of new OS-9 L2 Kernel
boisy
parents:
diff changeset
13 FClrBlk ldb R$B,u
ca83286ded5b Start of new OS-9 L2 Kernel
boisy
parents:
diff changeset
14 beq L0BE9
ca83286ded5b Start of new OS-9 L2 Kernel
boisy
parents:
diff changeset
15 ldd R$U,u
ca83286ded5b Start of new OS-9 L2 Kernel
boisy
parents:
diff changeset
16 tstb
ca83286ded5b Start of new OS-9 L2 Kernel
boisy
parents:
diff changeset
17 bne L0BAA
ca83286ded5b Start of new OS-9 L2 Kernel
boisy
parents:
diff changeset
18 bita #$1F
ca83286ded5b Start of new OS-9 L2 Kernel
boisy
parents:
diff changeset
19 bne L0BAA
ca83286ded5b Start of new OS-9 L2 Kernel
boisy
parents:
diff changeset
20 ldx <D.Proc
ca83286ded5b Start of new OS-9 L2 Kernel
boisy
parents:
diff changeset
21 lda P$SP,x
ca83286ded5b Start of new OS-9 L2 Kernel
boisy
parents:
diff changeset
22 anda #$E0
ca83286ded5b Start of new OS-9 L2 Kernel
boisy
parents:
diff changeset
23 suba R$U,u
ca83286ded5b Start of new OS-9 L2 Kernel
boisy
parents:
diff changeset
24 bcs L0BCE
ca83286ded5b Start of new OS-9 L2 Kernel
boisy
parents:
diff changeset
25 lsra
ca83286ded5b Start of new OS-9 L2 Kernel
boisy
parents:
diff changeset
26 lsra
ca83286ded5b Start of new OS-9 L2 Kernel
boisy
parents:
diff changeset
27 lsra
ca83286ded5b Start of new OS-9 L2 Kernel
boisy
parents:
diff changeset
28 lsra
ca83286ded5b Start of new OS-9 L2 Kernel
boisy
parents:
diff changeset
29 lsra
ca83286ded5b Start of new OS-9 L2 Kernel
boisy
parents:
diff changeset
30 cmpa R$B,u
ca83286ded5b Start of new OS-9 L2 Kernel
boisy
parents:
diff changeset
31 bcs L0BAA
ca83286ded5b Start of new OS-9 L2 Kernel
boisy
parents:
diff changeset
32 L0BCE
ca83286ded5b Start of new OS-9 L2 Kernel
boisy
parents:
diff changeset
33 IFNE H6309
ca83286ded5b Start of new OS-9 L2 Kernel
boisy
parents:
diff changeset
34 oim #ImgChg,P$State,x
ca83286ded5b Start of new OS-9 L2 Kernel
boisy
parents:
diff changeset
35 ELSE
ca83286ded5b Start of new OS-9 L2 Kernel
boisy
parents:
diff changeset
36 lda P$State,x
ca83286ded5b Start of new OS-9 L2 Kernel
boisy
parents:
diff changeset
37 ora #ImgChg
ca83286ded5b Start of new OS-9 L2 Kernel
boisy
parents:
diff changeset
38 sta P$State,x
ca83286ded5b Start of new OS-9 L2 Kernel
boisy
parents:
diff changeset
39 ENDC
ca83286ded5b Start of new OS-9 L2 Kernel
boisy
parents:
diff changeset
40 lda R$U,u
ca83286ded5b Start of new OS-9 L2 Kernel
boisy
parents:
diff changeset
41 lsra
ca83286ded5b Start of new OS-9 L2 Kernel
boisy
parents:
diff changeset
42 lsra
ca83286ded5b Start of new OS-9 L2 Kernel
boisy
parents:
diff changeset
43 lsra
ca83286ded5b Start of new OS-9 L2 Kernel
boisy
parents:
diff changeset
44 lsra
ca83286ded5b Start of new OS-9 L2 Kernel
boisy
parents:
diff changeset
45 leay P$DATImg,x
ca83286ded5b Start of new OS-9 L2 Kernel
boisy
parents:
diff changeset
46 leay a,y
ca83286ded5b Start of new OS-9 L2 Kernel
boisy
parents:
diff changeset
47 ldb R$B,u
ca83286ded5b Start of new OS-9 L2 Kernel
boisy
parents:
diff changeset
48 ldx #DAT.Free
ca83286ded5b Start of new OS-9 L2 Kernel
boisy
parents:
diff changeset
49 L0BE4 stx ,y++
ca83286ded5b Start of new OS-9 L2 Kernel
boisy
parents:
diff changeset
50 decb
ca83286ded5b Start of new OS-9 L2 Kernel
boisy
parents:
diff changeset
51 bne L0BE4
ca83286ded5b Start of new OS-9 L2 Kernel
boisy
parents:
diff changeset
52 L0BE9 clrb
ca83286ded5b Start of new OS-9 L2 Kernel
boisy
parents:
diff changeset
53 rts