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