annotate level1/cmds/go51.asm @ 1020:c1a5613ffe7b

changes
author boisy
date Thu, 06 Mar 2003 01:41:03 +0000
parents c155aac72190
children 04b3b0436d6b
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
118
ce8dbdbb3ca2 The Go51 module for 51x24 display
roug
parents:
diff changeset
1 ********************************************************************
ce8dbdbb3ca2 The Go51 module for 51x24 display
roug
parents:
diff changeset
2 * go51 - The 51 column by 24 line video display
ce8dbdbb3ca2 The Go51 module for 51x24 display
roug
parents:
diff changeset
3 *
ce8dbdbb3ca2 The Go51 module for 51x24 display
roug
parents:
diff changeset
4 * $Id$
ce8dbdbb3ca2 The Go51 module for 51x24 display
roug
parents:
diff changeset
5 *
ce8dbdbb3ca2 The Go51 module for 51x24 display
roug
parents:
diff changeset
6 * Ed. Comments Who YY/MM/DD
ce8dbdbb3ca2 The Go51 module for 51x24 display
roug
parents:
diff changeset
7 * ------------------------------------------------------------------
200
e9ce43cc215e Made major changes to headers for consistency and identification
boisy
parents: 120
diff changeset
8 * 1 From Dragon OS-9 Level One VR 01.02.00
118
ce8dbdbb3ca2 The Go51 module for 51x24 display
roug
parents:
diff changeset
9
ce8dbdbb3ca2 The Go51 module for 51x24 display
roug
parents:
diff changeset
10 nam go51
ce8dbdbb3ca2 The Go51 module for 51x24 display
roug
parents:
diff changeset
11 ttl The 51 column by 24 line video display
ce8dbdbb3ca2 The Go51 module for 51x24 display
roug
parents:
diff changeset
12
ce8dbdbb3ca2 The Go51 module for 51x24 display
roug
parents:
diff changeset
13 * Disassembled 02/07/06 21:10:42 by Disasm v1.6 (C) 1988 by RML
ce8dbdbb3ca2 The Go51 module for 51x24 display
roug
parents:
diff changeset
14
ce8dbdbb3ca2 The Go51 module for 51x24 display
roug
parents:
diff changeset
15 ifp1
ce8dbdbb3ca2 The Go51 module for 51x24 display
roug
parents:
diff changeset
16 use defsfile
ce8dbdbb3ca2 The Go51 module for 51x24 display
roug
parents:
diff changeset
17 endc
200
e9ce43cc215e Made major changes to headers for consistency and identification
boisy
parents: 120
diff changeset
18
118
ce8dbdbb3ca2 The Go51 module for 51x24 display
roug
parents:
diff changeset
19 tylg set Prgrm+Objct
ce8dbdbb3ca2 The Go51 module for 51x24 display
roug
parents:
diff changeset
20 atrv set ReEnt+rev
ce8dbdbb3ca2 The Go51 module for 51x24 display
roug
parents:
diff changeset
21 rev set $01
200
e9ce43cc215e Made major changes to headers for consistency and identification
boisy
parents: 120
diff changeset
22 edition set 1
e9ce43cc215e Made major changes to headers for consistency and identification
boisy
parents: 120
diff changeset
23
118
ce8dbdbb3ca2 The Go51 module for 51x24 display
roug
parents:
diff changeset
24 mod eom,name,tylg,atrv,start,size
200
e9ce43cc215e Made major changes to headers for consistency and identification
boisy
parents: 120
diff changeset
25
924
c155aac72190 Made cosmetic changes
boisy
parents: 880
diff changeset
26 org 0
880
67178d0593da Made more comments
boisy
parents: 268
diff changeset
27 ioptr rmb 2
67178d0593da Made more comments
boisy
parents: 268
diff changeset
28 drvrptr rmb 2
67178d0593da Made more comments
boisy
parents: 268
diff changeset
29 drvrsiz rmb 2
924
c155aac72190 Made cosmetic changes
boisy
parents: 880
diff changeset
30 optbuf rmb 32
118
ce8dbdbb3ca2 The Go51 module for 51x24 display
roug
parents:
diff changeset
31 size equ .
200
e9ce43cc215e Made major changes to headers for consistency and identification
boisy
parents: 120
diff changeset
32
e9ce43cc215e Made major changes to headers for consistency and identification
boisy
parents: 120
diff changeset
33 name fcs /go51/
e9ce43cc215e Made major changes to headers for consistency and identification
boisy
parents: 120
diff changeset
34 fcb edition
e9ce43cc215e Made major changes to headers for consistency and identification
boisy
parents: 120
diff changeset
35
204
338195952a01 Made some source improvements
boisy
parents: 203
diff changeset
36 IOMod fcs /KBVDIO/
880
67178d0593da Made more comments
boisy
parents: 268
diff changeset
37 IOModL equ *-IOMod
204
338195952a01 Made some source improvements
boisy
parents: 203
diff changeset
38 Driver fcs /drvr51/
338195952a01 Made some source improvements
boisy
parents: 203
diff changeset
39 Desc fcs /term/
338195952a01 Made some source improvements
boisy
parents: 203
diff changeset
40
880
67178d0593da Made more comments
boisy
parents: 268
diff changeset
41 start leax >IOMod,pcr point to I/O module
67178d0593da Made more comments
boisy
parents: 268
diff changeset
42 lbsr DoLink link to it
67178d0593da Made more comments
boisy
parents: 268
diff changeset
43 lbcs Bye branch if error
67178d0593da Made more comments
boisy
parents: 268
diff changeset
44 stx ioptr,u save ptr to module
67178d0593da Made more comments
boisy
parents: 268
diff changeset
45 lbsr DoUnlink unlink it
67178d0593da Made more comments
boisy
parents: 268
diff changeset
46 leax >Driver,pcr point to driver
67178d0593da Made more comments
boisy
parents: 268
diff changeset
47 lbsr DoLink link to it
67178d0593da Made more comments
boisy
parents: 268
diff changeset
48 lbcs Bye branch if error
67178d0593da Made more comments
boisy
parents: 268
diff changeset
49 stx drvrptr,u save ptr to driver
67178d0593da Made more comments
boisy
parents: 268
diff changeset
50 ldd M$Size,x get module size
67178d0593da Made more comments
boisy
parents: 268
diff changeset
51 std drvrsiz,u save driver size
118
ce8dbdbb3ca2 The Go51 module for 51x24 display
roug
parents:
diff changeset
52 pshs u,cc
880
67178d0593da Made more comments
boisy
parents: 268
diff changeset
53 orcc #IntMasks mask interrupts
204
338195952a01 Made some source improvements
boisy
parents: 203
diff changeset
54 ldx >D.AltIRQ
880
67178d0593da Made more comments
boisy
parents: 268
diff changeset
55 stx >D.IRQ swap irq vector
67178d0593da Made more comments
boisy
parents: 268
diff changeset
56 ldy ioptr,u
67178d0593da Made more comments
boisy
parents: 268
diff changeset
57 ldx drvrsiz,u get driver size
67178d0593da Made more comments
boisy
parents: 268
diff changeset
58 ldu drvrptr,u get driver pointer
118
ce8dbdbb3ca2 The Go51 module for 51x24 display
roug
parents:
diff changeset
59 L0054 lda ,u+
ce8dbdbb3ca2 The Go51 module for 51x24 display
roug
parents:
diff changeset
60 sta ,y+
ce8dbdbb3ca2 The Go51 module for 51x24 display
roug
parents:
diff changeset
61 leax -$01,x
ce8dbdbb3ca2 The Go51 module for 51x24 display
roug
parents:
diff changeset
62 bne L0054
ce8dbdbb3ca2 The Go51 module for 51x24 display
roug
parents:
diff changeset
63 ldx #$FF00
ce8dbdbb3ca2 The Go51 module for 51x24 display
roug
parents:
diff changeset
64 lda $01,x
ce8dbdbb3ca2 The Go51 module for 51x24 display
roug
parents:
diff changeset
65 ora #$30
ce8dbdbb3ca2 The Go51 module for 51x24 display
roug
parents:
diff changeset
66 anda #$F7
ce8dbdbb3ca2 The Go51 module for 51x24 display
roug
parents:
diff changeset
67 sta $01,x
ce8dbdbb3ca2 The Go51 module for 51x24 display
roug
parents:
diff changeset
68 lda $03,x
ce8dbdbb3ca2 The Go51 module for 51x24 display
roug
parents:
diff changeset
69 anda #$F6
ce8dbdbb3ca2 The Go51 module for 51x24 display
roug
parents:
diff changeset
70 ora #$30
ce8dbdbb3ca2 The Go51 module for 51x24 display
roug
parents:
diff changeset
71 sta $03,x
ce8dbdbb3ca2 The Go51 module for 51x24 display
roug
parents:
diff changeset
72 ldx #$FF20
ce8dbdbb3ca2 The Go51 module for 51x24 display
roug
parents:
diff changeset
73 lda $03,x
ce8dbdbb3ca2 The Go51 module for 51x24 display
roug
parents:
diff changeset
74 ora #$38
ce8dbdbb3ca2 The Go51 module for 51x24 display
roug
parents:
diff changeset
75 sta $03,x
ce8dbdbb3ca2 The Go51 module for 51x24 display
roug
parents:
diff changeset
76 puls u,cc
880
67178d0593da Made more comments
boisy
parents: 268
diff changeset
77 ldx drvrptr,u get pointer to driver module
67178d0593da Made more comments
boisy
parents: 268
diff changeset
78 lbsr DoUnlink unlink it
67178d0593da Made more comments
boisy
parents: 268
diff changeset
79 ldx ioptr,u get io mod pointer
67178d0593da Made more comments
boisy
parents: 268
diff changeset
80 ldd M$Name,x get offset to I/O module name
67178d0593da Made more comments
boisy
parents: 268
diff changeset
81 leax d,x point X to name
204
338195952a01 Made some source improvements
boisy
parents: 203
diff changeset
82 leay >IOMod,pcr
880
67178d0593da Made more comments
boisy
parents: 268
diff changeset
83 ldb #IOModL
118
ce8dbdbb3ca2 The Go51 module for 51x24 display
roug
parents:
diff changeset
84 L008B lda ,y+
ce8dbdbb3ca2 The Go51 module for 51x24 display
roug
parents:
diff changeset
85 sta ,x+
ce8dbdbb3ca2 The Go51 module for 51x24 display
roug
parents:
diff changeset
86 decb
ce8dbdbb3ca2 The Go51 module for 51x24 display
roug
parents:
diff changeset
87 bne L008B
880
67178d0593da Made more comments
boisy
parents: 268
diff changeset
88 lda #$01 standard output
67178d0593da Made more comments
boisy
parents: 268
diff changeset
89 ldb #SS.Opt option getstat
924
c155aac72190 Made cosmetic changes
boisy
parents: 880
diff changeset
90 leax optbuf,u point to buffer
880
67178d0593da Made more comments
boisy
parents: 268
diff changeset
91 os9 I$GetStt get status
67178d0593da Made more comments
boisy
parents: 268
diff changeset
92 bcs Bye branch if error
268
b19b5d02a2e1 Source enhancements
boisy
parents: 204
diff changeset
93 clr (PD.UPC-PD.OPT),x
b19b5d02a2e1 Source enhancements
boisy
parents: 204
diff changeset
94 lda #24
b19b5d02a2e1 Source enhancements
boisy
parents: 204
diff changeset
95 sta (PD.PAG-PD.OPT),x
118
ce8dbdbb3ca2 The Go51 module for 51x24 display
roug
parents:
diff changeset
96 lda #$01
204
338195952a01 Made some source improvements
boisy
parents: 203
diff changeset
97 ldb #SS.Opt
118
ce8dbdbb3ca2 The Go51 module for 51x24 display
roug
parents:
diff changeset
98 os9 I$SetStt
268
b19b5d02a2e1 Source enhancements
boisy
parents: 204
diff changeset
99 bcs Bye
204
338195952a01 Made some source improvements
boisy
parents: 203
diff changeset
100 leax >Desc,pcr
338195952a01 Made some source improvements
boisy
parents: 203
diff changeset
101 lda #Devic+Objct
118
ce8dbdbb3ca2 The Go51 module for 51x24 display
roug
parents:
diff changeset
102 pshs u
ce8dbdbb3ca2 The Go51 module for 51x24 display
roug
parents:
diff changeset
103 os9 F$Link
ce8dbdbb3ca2 The Go51 module for 51x24 display
roug
parents:
diff changeset
104 tfr u,x
ce8dbdbb3ca2 The Go51 module for 51x24 display
roug
parents:
diff changeset
105 puls u
268
b19b5d02a2e1 Source enhancements
boisy
parents: 204
diff changeset
106 bcs Bye
880
67178d0593da Made more comments
boisy
parents: 268
diff changeset
107 clr <IT.UPC,x clear uppercase flag
67178d0593da Made more comments
boisy
parents: 268
diff changeset
108 lda #24 new screen has 24 lines
67178d0593da Made more comments
boisy
parents: 268
diff changeset
109 sta <IT.PAG,x save it
268
b19b5d02a2e1 Source enhancements
boisy
parents: 204
diff changeset
110 bsr DoUnlink
118
ce8dbdbb3ca2 The Go51 module for 51x24 display
roug
parents:
diff changeset
111 clrb
268
b19b5d02a2e1 Source enhancements
boisy
parents: 204
diff changeset
112 Bye os9 F$Exit
b19b5d02a2e1 Source enhancements
boisy
parents: 204
diff changeset
113
b19b5d02a2e1 Source enhancements
boisy
parents: 204
diff changeset
114 DoLink pshs u
204
338195952a01 Made some source improvements
boisy
parents: 203
diff changeset
115 lda #Drivr+Objct
118
ce8dbdbb3ca2 The Go51 module for 51x24 display
roug
parents:
diff changeset
116 os9 F$Link
ce8dbdbb3ca2 The Go51 module for 51x24 display
roug
parents:
diff changeset
117 tfr u,x
ce8dbdbb3ca2 The Go51 module for 51x24 display
roug
parents:
diff changeset
118 puls pc,u
268
b19b5d02a2e1 Source enhancements
boisy
parents: 204
diff changeset
119
b19b5d02a2e1 Source enhancements
boisy
parents: 204
diff changeset
120 DoUnlink pshs u
118
ce8dbdbb3ca2 The Go51 module for 51x24 display
roug
parents:
diff changeset
121 tfr x,u
ce8dbdbb3ca2 The Go51 module for 51x24 display
roug
parents:
diff changeset
122 os9 F$UnLink
ce8dbdbb3ca2 The Go51 module for 51x24 display
roug
parents:
diff changeset
123 puls pc,u
204
338195952a01 Made some source improvements
boisy
parents: 203
diff changeset
124
118
ce8dbdbb3ca2 The Go51 module for 51x24 display
roug
parents:
diff changeset
125 emod
ce8dbdbb3ca2 The Go51 module for 51x24 display
roug
parents:
diff changeset
126 eom equ *
204
338195952a01 Made some source improvements
boisy
parents: 203
diff changeset
127 end