annotate 3rdparty/packages/sierra/objs/sierra.asm @ 989:979b7f290efc

First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
author pwz
date Fri, 21 Feb 2003 04:34:39 +0000
parents fd9d07c31d20
children 3c51c59f97c4
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
989
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1 ********************************************************************
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
2 * SIERRA - Kings Quest III set up module
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
3 *
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
4 * $Id$
814
fd9d07c31d20 Moved files from CMDS
boisy
parents:
diff changeset
5 *
989
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
6 * Ed. Comments Who YY/MM/DD
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
7 * ------------------------------------------------------------------
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
8 * 0 Disassembly of original distribution and PWZ 03/01/31
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
9 * merged in comments from disasm dated 1992
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
10
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
11 * Header for : sierra
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
12 * Module size: $561 #1377
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
13 * Module CRC : $E178D8 (Good)
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
14 * Hdr parity : $4C
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
15 * Exec. off : $0014 #20
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
16 * Data size : $1FFF #8191
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
17 * Edition : $00 #0
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
18 * Ty/La At/Rv: $11 $81
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
19 * Prog mod, 6809 Obj, re-ent, R/O
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
20
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
21
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
22 ***** The following patch is NOT included in this disassembly *****
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
23 ***** Will be included in the next revision *****
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
24 * Patch to correct use of wrong register when determining monitor
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
25 * type. Game will now start up in the same mode (RGB or composite)
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
26 * that was active when the game was started.
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
27 * The -R option also works now.
814
fd9d07c31d20 Moved files from CMDS
boisy
parents:
diff changeset
28 *
fd9d07c31d20 Moved files from CMDS
boisy
parents:
diff changeset
29 * l sierra
fd9d07c31d20 Moved files from CMDS
boisy
parents:
diff changeset
30 * c 177 a7 e7
fd9d07c31d20 Moved files from CMDS
boisy
parents:
diff changeset
31 * c 17b 84 c4
fd9d07c31d20 Moved files from CMDS
boisy
parents:
diff changeset
32 * c 17d b7 f7
fd9d07c31d20 Moved files from CMDS
boisy
parents:
diff changeset
33 * v
fd9d07c31d20 Moved files from CMDS
boisy
parents:
diff changeset
34
989
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
35
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
36 * Required Level 2 definitions
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
37 Level equ 2
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
38
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
39 *Monitor defs
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
40 COMP equ 0
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
41 RGB equ 1
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
42 MONO equ 2
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
43
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
44
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
45 * I/O path definitions
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
46 StdIn equ 0
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
47 StdOut equ 1
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
48 StdErr equ 2
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
49
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
50 nam sierra
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
51 ttl program module
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
52
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
53 * Disassembled 03/01/29 23:22:42 by Disasm v1.6 (C) 1988 by RML
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
54
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
55 ifp1
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
56 use os9defs
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
57 use scfdefs
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
58 endc
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
59 tylg set Prgrm+Objct
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
60 atrv set ReEnt+rev
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
61 rev set $01
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
62 mod eom,name,tylg,atrv,start,size
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
63
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
64 u0000 rmb 2 holds size of data area
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
65 u0002 rmb 1 MMU block # mapped into block #2 -org
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
66 u0003 rmb 1 MMU block # mapped into block #3 -org
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
67 u0004 rmb 2 Hi res screen start address
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
68 u0006 rmb 2 Hi res screen end address ?????
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
69 u0008 rmb 1 disasm as u0008 rmb 2
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
70 u0009 rmb 1 MMU Block # SIERRA is in -org
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
71 u000A rmb 1 double byte MMU Task 1 block 1
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
72 u000B rmb 1 value actually resides here
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
73 u000C rmb 1
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
74 u000D rmb 1
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
75 u000E rmb 1
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
76 u000F rmb 1
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
77 u0010 rmb 1
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
78 u0011 rmb 3
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
79 u0014 rmb 2 Hi res screen start address
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
80 u0016 rmb 2 Hi res screen end address ???
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
81 u0017 rmb 4
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
82 u001C rmb 2
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
83 u001E rmb 4
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
84 u0022 rmb 1
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
85 u0023 rmb 1
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
86 u0024 rmb 2
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
87 u0026 rmb 2
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
88 u0028 rmb 2
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
89 u002A rmb 2 saves stack pointer of caller to sub659
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
90 u002C rmb 2
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
91 u002E rmb 16
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
92 u003E rmb 1
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
93 u003F rmb 2
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
94 u0041 rmb 1
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
95 u0042 rmb 1 MMU Block # of SIERRA's dsc.
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
96
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
97 u0043 rmb 2
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
98 u0045 rmb 1 flag after color table sets
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
99 u0046 rmb 2
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
100 u0048 rmb 2
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
101 u004A rmb 5
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
102 u004F rmb 4
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
103 u0053 rmb 2 monitor type
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
104 u0055 rmb 10
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
105 u005F rmb 163
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
106
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
107 *u0102 rmb 327 ---disassembly
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
108
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
109 u0102 rmb 113
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
110 mtf173 rmb 1 multitasking flag
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
111 scr174 rmb 1 screen number?
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
112 x01076 rmb 212
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
113 u0249 rmb 1
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
114 u024A rmb 1
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
115 u024B rmb 1
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
116 u024C rmb 497
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
117
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
118 *u043D rmb 7106 ---disassembly
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
119
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
120 u043D rmb 433
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
121 int5EE rmb 107 Signal Intercept routine from 452 - 4BD
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
122 sub659 rmb 116 Slot to hold subroutine for others uses at 4DA - 54F
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
123 u0xxx rmb 6450
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
124 size equ .
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
125 name equ *
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
126 fcs /sierra/
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
127 fcb $00
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
128
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
129 start equ *
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
130 L0014 lbra L007D branch to entry process params
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
131 L0017 lbra L00DB branch to clean up routines
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
132
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
133
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
134 * Multi-tasking flag (0=No multitask, 1=multitask)
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
135 L001A fcb $00 we store a value here
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
136 * the "old self modifying code" trick
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
137
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
138
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
139 * Text strings think this was probably an Info thing
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
140 L001B fcc 'AGI (c) copyright 1988 SIERRA On-Line'
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
141 fcc 'CoCo3 version by Chris Iden'
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
142 fcb $00
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
143 Infosz equ *-L001B
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
144
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
145
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
146 * Useage text string
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
147 L005C fcc 'Usage: Sierra -Rgb -Multitasking'
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
148 fcb C$CR
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
149 Usgsz equ *-L005C
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
150
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
151
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
152 L007D tfr s,d save stack ptr / start of param ptr into d
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
153 *
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
154 subd #$04FF start of stack/end of data mem ptr
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
155 std <u0000 store this value in user var
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
156 bsr L009C branch to input processer routine
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
157
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
158 L0086 lbsr L011A relay call to L0140
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
159
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
160 L0089 ldd <u0000 load the data pointer
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
161 beq L00DF if it is zero we have a problem
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
162 ldd >$FFA9 ??? MMU task 1 block 1 ???
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
163 std <u000A save the task 1 block one value
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
164 lda #$00
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
165 sta <u0011
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
166 ldx <u0024
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
167 jsr sub659 code at L04DA plays with mmu blocks
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
168 rts
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
169
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
170 * Process any command line args
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
171 * See F$Fork description 8-15 for entry conditions
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
172
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
173 L009C lda ,x+ get next char after name string
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
174 cmpa #C$CR is it a CR?
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
175 beq L00DA yes exit from routine
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
176 cmpa #$2D is it a dash '-
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
177 bne L009C not a dash go look again
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
178
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
179 lda ,x+ was as dash get the next char
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
180 ora #$20 apply mask to lower case
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
181 cmpa #$72 is it a 'r ?
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
182 beq L00C2 yep go set up for RGB monitor
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
183 cmpa #$6D is it an 'm ?
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
184 beq L00D2 if so go store a flag and continue
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
185
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
186 * We've found something other than Mm or Rr after a dash
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
187 * write usage message and Exit program
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
188
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
189 lda #StdOut load path std out
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
190 leax >L005C,pcr load address of message
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
191 ldy #Usgsz $0021 load the size of the message
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
192 os9 I$WritLn write it
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
193 clrb clear the error code (unneeded branch to L00DE)
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
194 bra L00DF and branch to exit!
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
195
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
196 * found a "-r"
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
197 L00C2 pshs x save x-reg since set stat call uses it
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
198 lda #StdOut $01 set the path number
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
199 ldb #SS.Montr code #$92 sets the monitor type
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
200 ldx #RGB monitor type code $0001
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
201 os9 I$SetStt set it up
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
202 puls x fetch our x back assumes call doesn't fail
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
203 bra L009C go process the rest of the parms
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
204
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
205 * found an "-m"
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
206 L00D2 lda #$01 we have found a -m and load a flag
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
207 sta >L001A,pcr and stow it in our code area (SELF MODIFYING)
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
208 bra L009C check for next param
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
209
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
210 L00DA rts return
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
211
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
212
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
213 * This is just a relay call to L0336
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
214 L00DB lbsr L0133
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
215
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
216 L00DE clrb NOBODY USES ME ?
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
217 L00DF os9 F$Exit time to check out
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
218
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
219 * disassembler had a little problem here
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
220 L00E2 fdb $000C another prog internal var
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
221
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
222 * Are these all data bytes of some kind ???
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
223 * quirky assemblage of bytes
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
224 L00E4 fcb $02,$2E,$06,$09,$04,$20,$10,$1B
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
225 fcb $11,$3D,$17,$29,$33,$3F,$00,$08
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
226 fcb $14,$18,$20,$28,$22,$38,$07,$0B
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
227 fcb $16,$1F,$27,$2D,$37,$3F
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
228
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
229 * The disaasembly gets confused here with text and the nulls
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
230 * according to the partial disassembly I recieved these hold
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
231 * Original MMU block image of second and thrid blocks of SIERRA
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
232 * MORE SELF MODIFYING CODE
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
233
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
234 L0102 fdb $0000 Orig MMU block inage of 2nd blk of sierra
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
235 L0104 fdb $0000 Orig MMU block inage of 3nd blk of sierra
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
236
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
237 * Name strinsg of other modules to load.
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
238
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
239 L0106 fcc 'Shdw'
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
240 fcb C$CR
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
241
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
242 L010B fcc 'Scrn'
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
243 fcb C$CR
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
244
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
245 L0110 fcc 'MnLn'
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
246 fcb C$CR
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
247
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
248
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
249 * Internal variables for self modifying code
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
250 L0115 fcb $00 Echo
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
251 L0116 fcb $00 EOF
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
252 L0117 fcb $00 INTerupt
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
253 L0118 fcb $00 Quit
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
254 L0119 fcb $00 Monitor type Coco set to when Sierra ran
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
255
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
256
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
257 * L011A called by L0086
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
258 L011A lbsr L0140 Clears data area, sets up vars and saves montype
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
259
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
260 lbsr L01AF Change our process image to dupe block 0 to 1-2
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
261 L0120 lbsr L01FA copies two subs to data area so others can use them
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
262
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
263 lbsr L0419 load intercept routine and open /VI and allocate Ram
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
264 bcs L0139 if errors occured close VIRQ device
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
265
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
266 lbsr L0229 NMLoads the three other modules and sets up vals
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
267 bcs L0136 problems then unload them
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
268
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
269 lbsr L026B go set up screens
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
270 bcs L0133 problems deallocate them
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
271 rts
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
272
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
273 * clean up and shut down
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
274 L0133 lbsr L0336 go deallocate hi res screens
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
275 L0136 lbsr L0370 unloads the three other modules
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
276 L0139 lbsr L04BD Close VIRQ device
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
277 lbsr L0388 restore the MMU blocks
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
278 rts
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
279
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
280 * at this point u0000 contains the value of s on entry minus $04FF
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
281 * which should be the size of our initialized data
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
282 * so we don't over write it but clear the rest of the data area
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
283
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
284 L0140 ldx #$0002 Init data area from 2-end with 0's
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
285 ldd #$0000
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
286 L0146 std ,x++
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
287 cmpx <u0000 should have the value $04FF
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
288 bcs L0146 appears this zeros out memory somewhere
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
289
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
290 * initialize some variables
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
291 lda >L001A,pcr multitasking flag from startup parms
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
292 sta mtf173 >$0173 store it
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
293
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
294 ldd #$06CE why twice
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
295 std <u0053
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
296 std <u0055
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
297
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
298 lda #$5C
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
299 sta >$0101
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
300
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
301 lda #$17
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
302 sta >$01D8
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
303
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
304 lda #$0F
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
305 sta >$023F
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
306
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
307 ldd #$0000
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
308 std <u004F
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
309
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
310 * get current montype
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
311 * GetStat Function Code $92
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
312 * Allocates and maps high res screen
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
313 * into application address space
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
314 * entry:
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
315 * a -> path number
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
316 * b -> function code $92 (SS.Montr)
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
317 *
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
318 * exit:
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
319 * x -> monitor type
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
320 *
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
321 * error:
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
322 * CC -> Carry set on error
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
323 * b -> error code (if any)
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
324 *
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
325 lda #StdOut $01 path number
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
326 ldb #SS.Montr monitor type code (not listed for getstat $92
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
327 os9 I$GetStt make the call
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
328 tfr x,d save in d appears he expects montype returned
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
329 sta >L0119,pcr trim it to a byte and save it
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
330 anda #$01 mask out mono type only RGB or COMP
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
331 sta >$0553 save that value off
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
332
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
333 * set current montype
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
334 * SetStat Function Code $92
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
335 * Allocates and maps high res screen
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
336 * into application address space
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
337 * entry:
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
338 * a -> path number
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
339 * b -> function code $92 (SS.Montr)
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
340 * x -> momitor type
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
341 * 0 = color composite
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
342 * 1 = analog RGB
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
343 * 2 = monochrome composite
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
344 *
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
345 * error:
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
346 * CC -> Carry set on error
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
347 * b -> error code (if any)
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
348 *
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
349 ldx #RGB $0001 set type to RGB again as in L00C2
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
350 lda #StdOut $01 set the path
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
351 ldb #SS.Montr Monitor type code $92
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
352 os9 I$SetStt make the call
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
353
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
354 * initialize more variables
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
355
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
356 lda #$32
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
357 sta >$0246
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
358
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
359 ldd #$6000 This is the start of high res screen memory
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
360 std <u0046
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
361
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
362 lda #$15
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
363 sta >$0248
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
364
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
365 lda #$FF Init 15 bytes at u0532 to $FF
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
366 ldb #$0F
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
367 ldx #$0532
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
368 bsr L01A3
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
369 rts
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
370
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
371 * Fill routine-one byte pattern
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
372 * Entry: A=Byte to fill with
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
373 * B=# bytes to fill
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
374 * X=Start address of fill
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
375
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
376 L01A3 sta ,x+
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
377 decb
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
378 bne L01A3
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
379 rts
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
380
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
381 * Fill routine-two byte pattern
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
382 * Entry: U=2-Byte pattern to fill with
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
383 * B=# bytes to fill
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
384 * X=Start address of fill
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
385 * NO BODY CALLS HERE ??
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
386 L01A9 stu ,x++
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
387 decb
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
388 bne L01A9
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
389 rts
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
390
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
391 * Raw disassembly of followin code
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
392 *L01AF orcc #$50
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
393 * ldx #$0002
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
394 * stx <u0022
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
395 * lda >$FFAF
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
396 * sta <u0008
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
397 * clr >$FFA9
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
398 * ldd >$2050
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
399 * anda #$1F
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
400 * addd #$2043
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
401 * std <u0043
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
402 * ldb >$2050
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
403 * andb #$E0
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
404 * lsrb
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
405 * lsrb
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
406 * lsrb
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
407 * lsrb
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
408 * lsrb
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
409 * ldx #$FFA0
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
410 * lda b,x
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
411 * sta <u0042
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
412 * sta >$FFA9
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
413 * ldx <u0043
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
414 * ldd -$01,x
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
415 * std >L0102,pcr
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
416 * ldd $01,x
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
417 * std >L0104,pcr
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
418 * ldd -$03,x
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
419 * std -$01,x
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
420 * std $01,x
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
421 * tfr b,a
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
422 * std >$FFA9
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
423 * std <u0002
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
424 * andcc #$AF
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
425 * rts
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
426
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
427 **********************************************************
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
428 * COMMENTS FROM CODE RECIEVED
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
429 * Change our process map:
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
430 * Blocks 1-2 become duplicates of block 0 (data area...
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
431 * changes actual MMU regs themselves &
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
432 * changes them in our process descriptor
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
433 *
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
434 * NOTE: SHOULD CHANGE SO IT MAPS IN BLOCK 0 IN AN UNUSED BLOCK 1ST
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
435 * TO GET PROCESS DESCRIPTOR DAT IMAGE FOR SIERRA.
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
436 * THEN, CAN BUMP BLOCKS AROUND WITH THE ACTUAL BLOCK #
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
437 * IN FULL 2 MB RANGE, INSTEAD OF JUST GIME 512K RANGE.
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
438
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
439 L01AF orcc #IntMasks Shut interrupts off
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
440 ldx #$0002 ???
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
441 stx <u0022
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
442
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
443 * As per above NOTE, should postpone this until we have DAT image
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
444 * available for Sierra process
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
445
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
446 lda >$FFAF Get MMU block # SIERRA is in
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
447 sta <u0008 Save it
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
448 clr >$FFA9 Map system block 0 into $2000-$3FFF
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
449 ldd >D.Proc+$2000 Get SIERRA's process dsc. ptr
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
450 anda #$1F Keep non-MMU dependent address
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
451
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
452 * NOTE: OFFSET IS STUPID, SHOULD USE EVEN BYTE SO LDD'S BELOW
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
453 * CAN USE FASTER LDD ,X INSTEAD OF OFFSET,X
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
454
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
455 addd #$2000+P$DATImg+3 Set up ptr for what we want out of it
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
456 std <u0043 Save it
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
457 ldb >D.Proc+$2000 Get MSB of SIERRA's process dsc. ptr
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
458 andb #$E0 Calculate which 8K block within
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
459 * system task it's in
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
460 lsrb
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
461 lsrb
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
462 lsrb
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
463 lsrb
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
464 lsrb
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
465
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
466 * NOTE: HAVE TO CHANGE THIS TO GET BLOCK #'S FROM SYSTEM DAT IMAGE,
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
467 * NOT RAW GIME REGS (TO WORK WITH >512K MACHINES)
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
468 ldx #$FFA0 Point to base of System task DAT register set block 0 task 0
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
469 lda b,x Get block # that has process desc. for SIERRA
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
470 sta <u0042 Save it
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
471 sta >$FFA9 Map in block with process dsc. to $2000-$3FFF
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
472 ldx <u0043 Get offset to 2nd 8K block in DAT map for SIERRA
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
473 ldd -1,x Get MMU block # of current 2nd 8k block in SIERRA
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
474 std >L0102,pc Save it
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
475 ldd 1,x Get MMU block # of current 3rd 8k block in SIERRA
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
476 std >L0104,pc Save it
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
477 ldd -3,x Get data area block 3 from sierra (1st block)
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
478 std -1,x Move 8k data area to 2nd block
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
479 std 1,x And to 3rd block
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
480 tfr b,a D=Raw MMU block # for both
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
481
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
482 * HAVE TO CHANGE TO ALLOW FOR DISTO DAT EXTENSION
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
483 std >$FFA9 Map data area block into both blocks 2&3
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
484 std <u0002 Save both block #'s
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
485 andcc #^IntMasks Turn interrupts back on
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
486 rts
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
487
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
488
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
489 * NOTE: 6809/6309 MOD: STUPID. DO LEAX, AND THEN PSHS X
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
490
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
491 * load first routine
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
492 L01FA leas -2,s Make 2 word buffer on stack
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
493 leax >L054F,pc Point to end of routine
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
494 stx ,s Save ptr
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
495 leax >L04DA,pc Point to routine
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
496 * ldu #$0659 Point to place in data area to copy it
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
497 ldu #sub659
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
498 L0209 lda ,x+ Copy routine
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
499 sta ,u+
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
500 cmpx ,s Done whole routine yet?
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
501 blo L0209 No, keep going
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
502
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
503 * get next routine interrupt intecept routine
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
504 leax >L04BD,pcr point to end of routine
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
505 stx ,s save pointer
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
506 leax >L0452,pcr point to routine
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
507 ldu #int5EE point to place in data area to copy it
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
508 L021E lda ,x+ copy routine
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
509 sta ,u+
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
510 cmpx ,s Done whole routine yet?
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
511 blo L021E No, keep going
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
512 leas $02,s clean up stack
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
513 rts return
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
514
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
515 * Called from dispatch table at L0120
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
516 * The last op in the subroutine before this one
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
517 * was a puls a,b after a puhs x and a setsatt call for process+path to VIRQ
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
518
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
519 L0229 tfr b,a don't see what's going on here
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
520 incb
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
521 std <u001C but we save off a bunch of values
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
522
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
523 addd #$0202
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
524 std <u001E
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
525
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
526 addd #$0202
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
527 sta <u005F
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
528 std <u000C
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
529 std <u000E
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
530
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
531 ldu #$001A
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
532 stu <u0028
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
533 leax >L0106,pcr shdw
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
534 lbsr L03D0 NMLoads named module
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
535 bcs L026A return on error
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
536
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
537 ldu #$0012
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
538 stu <u0026
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
539 leax >L010B,pcr scrn
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
540 lbsr L03D0 NMLoads named module
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
541 bcs L026A return on error
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
542
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
543 ldu #$000A
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
544 stu <u0024
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
545 leax >L0110,pcr mnln
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
546 lbsr L03D0 NMLoads named module
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
547
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
548 leau >$2000,u
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
549 stu <u002E
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
550 L026A rts
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
551
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
552 *****************************************************
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
553 *
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
554 * Set up screens
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
555 * SetStat Function Code $8B
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
556 * Allocates and maps high res screen
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
557 * into application address space
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
558 * entry:
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
559 * a -> path number
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
560 * b -> function code $8B (SS.AScrn)
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
561 * x -> screen type
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
562 * 0 = 640 x 192 x 2 colors (16K)
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
563 * 1 = 320 x 192 x 4 colors (16K)
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
564 * 2 = 160 x 192 x 16 colors (16K)
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
565 * 3 = 640 x 192 x 4 colors (32K)
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
566 * 4 = 320 x 192 x 16 colors (32K)
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
567 *
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
568 * exit:
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
569 * x -> application address space of screen
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
570 * y -> screen number (1-3)
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
571 *
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
572 * error:
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
573 * CC -> Carry set on error
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
574 * b -> error code (if any)
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
575 *
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
576 * Call use VDGINT allocates high res graphics for use with screens
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
577 * updated by the process, does not clear the screens only allocates
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
578 * See OS-9 Technical Reference 8-142 for more details
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
579 *
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
580
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
581 L026B leas -$04,s mamke room om stack 2 words
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
582 lda #$01 Std out
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
583 ldb #SS.AScrn Allocate & map in hi-res screen (VDGINT)
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
584 ldx #$0004 320x192x16 screen
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
585 os9 I$SetStt Map it in
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
586 bcs L02E6 Error, Restore stack & exit
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
587 tfr y,d Move screen # returned to D
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
588 * stb >$0174 Save screen #
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
589 stb scr174 Save screen #
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
590
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
591 * call with application address of screen in x
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
592 * returns with values in u
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
593 lbsr L03B6 twiddle addresses
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
594 stu <u0004 stow it two places
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
595 stu <u0014
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
596
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
597 leax >$4000,x end address ???
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
598 lbsr L03B6 twiddle addresses
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
599 stu <u0006 stow it in two places
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
600 stu <u0016
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
601
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
602 * TFM for 6309
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
603 ldu #$D800 Clear hi-res screen to color 0
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
604 ldx #$7800 Screen is from $6000 to $D800
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
605 ldd #$0000 (U will end up pointing to beginning of screen)
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
606 L0299 std ,--u writes 0000 to screen address and decrements
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
607 leax -2,x decrement x loop counter
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
608 bne L0299 keep going till all of screen is cleared
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
609
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
610 * Display a screen allocated by SS.AScrn
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
611 * SetStat Function Code $8C
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
612 *
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
613 * entry:
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
614 * a -> path number
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
615 * b -> function code $8C (SS.DScrn)
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
616 * y -> screen numbe
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
617 * 0 = text screen (32 x 16)
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
618 * 1-3 = high resolution screen
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
619 *
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
620 * error:
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
621 * CC -> Carry set on error
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
622 * b -> error code (if any)
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
623
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
624 clra Get screen # to display
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
625 ldb scr174
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
626 tfr d,y Y=screen # to display
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
627 lda #StdOut $01 Std out path
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
628 ldb #SS.DScrn Display 320x192x16 screen
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
629 os9 I$SetStt make the call
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
630 bcs L02E6
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
631
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
632 leax >L00E2,pc values initialized to is $000C
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
633 ldb >$0553 monitor type
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
634 lda #$10
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
635 mul
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
636 abx add b to x and stow at x
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
637
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
638
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
639 * This loads up the control sequence to set the pallete 1B 31 PRN CTN
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
640 * PRN palette register 0 - 15, CTN color table 0 - 63
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
641 lda #$1B Escape code
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
642 sta ,s push on stack
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
643 lda #$31 Palette code
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
644 sta $01,s push on stack
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
645 clra make a zero palette reg value
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
646 sta $02,s push it `
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
647 ldy #$0004 sets up # of bytes to write
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
648 L02C8 ldb ,x+ get value computed above for color table and bump it
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
649 stb $03,s push it
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
650 pshs x save it
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
651 lda #StdOut $01 Std Out path
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
652 leax $02,s start of data to write
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
653 os9 I$Write write it
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
654 bcs L02E6 error during write clean up stack and leave
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
655 puls x retrieve our x
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
656 inc $02,s this is our palette register value
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
657 lda $02,s we bumped it by one
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
658 cmpa #$10 we loop 15 times to set them all
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
659 bcs L02C8 loop
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
660
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
661 clr <u0045 clear a flag in memory
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
662 lbsr L02E9 go disable keyboard interrupts
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
663 L02E6 leas $04,s clean up stack
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
664 rts return
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
665
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
666
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
667 * Raw disassembly of following section
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
668 *L02E9 leas <-$20,s
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
669 * lda #$00
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
670 * ldb #$00
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
671 * leax ,s
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
672 * os9 I$GetStt
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
673 * bcs L0332
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
674 * lda >L0115,pcr
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
675 * ldb $04,x
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
676 * sta $04,x
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
677 * stb >L0115,pcr
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
678 * lda >L0116,pcr
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
679 * ldb $0C,x
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
680 * sta $0C,x
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
681 * stb >L0116,pcr
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
682 * lda >L0117,pcr
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
683 * ldb <$10,x
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
684 * sta <$10,x
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
685 * stb >L0117,pcr
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
686 * lda >L0118,pcr
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
687 * ldb <$11,x
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
688 * sta <$11,x
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
689 * stb >L0118,pcr
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
690 * lda #$00
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
691 * ldb #$00
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
692 * os9 I$SetStt
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
693 *L0332 leas <$20,s
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
694 * rts
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
695
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
696 * Kills the echo, eof, int and quit signals
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
697 * get current options packet
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
698 * GetStat Function Code $00
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
699 * Reads the options section of the path descriptor and
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
700 * copies it into the 32 byte area pointed to by reg X`
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
701 * entry:
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
702 * a -> path number
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
703 * b -> function code $00 (SS.OPT)
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
704 * x -> address to recieve status packet
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
705 *
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
706 * error:
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
707 * CC -> Carry set on error
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
708 * b -> error code (if any)
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
709 *
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
710
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
711 L02E9 leas <-$20,s Make temp buffer to hold PD.OPT data
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
712 lda #StdIn $00 Get 32 byte PD.OPT from Std In
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
713 ldb #SS.OPT $00
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
714 leax ,s point to our temp buffer
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
715 os9 I$GetStt make the call
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
716 bcs L0332 error goto exit sub
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
717
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
718 * NOTE: make sure following lines assemble into 5 bit, not 8 bit
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
719 * These appear to be loading the echo EOF, INT and QUIT with
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
720 * null values and saving the original ones back to vars
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
721 * since L0115 - L0118 were initialized with $00
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
722
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
723 lda >L0115,pc
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
724 ldb PD.EKO-PD.OPT,x Get echo option
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
725 sta PD.EKO-PD.OPT,x change echo option no echo
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
726 stb >L0115,pc Save original echo option
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
727
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
728 lda >L0116,pc
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
729 ldb PD.EOF-PD.OPT,x Change EOF char
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
730 sta PD.EOF-PD.OPT,x
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
731 stb >L0116,pc
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
732
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
733 lda >L0117,pc
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
734 ldb <PD.INT-PD.OPT,x Change INTerrupt char (normally CTRL-C)
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
735 sta <PD.INT-PD.OPT,x
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
736 stb >L0117,pc
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
737
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
738 lda >L0118,pc
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
739 ldb <PD.QUT-PD.OPT,x Change QUIT char (normally CTRL-E)
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
740 sta <PD.QUT-PD.OPT,x
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
741 stb >L0118,pc
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
742
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
743 * set current options packet
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
744 * SetStat Function Code $00
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
745 * Writes the options section of the path descriptor
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
746 * from the 32 byte area pointed to by reg X`
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
747 * entry:
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
748 * a -> path number
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
749 * b -> function code $00 (SS.OPT)
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
750 * x -> address holding the status packet
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
751 *
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
752 * error:
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
753 * CC -> Carry set on error
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
754 * b -> error code (if any)
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
755 *
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
756
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
757 * x is still pointing to our temp buff
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
758 lda #StdIn $00 Set VDG screen to new options
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
759 ldb #SS.OPT $00
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
760 os9 I$SetStt set them to be our new values
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
761
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
762 L0332 leas <$20,s Eat temp stack & return
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
763 rts
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
764
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
765 * raw disassembly
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
766 *L0336 leas -$02,s
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
767 * tst >$0174
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
768 * beq L036D
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
769 * lbsr L02E9
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
770 * bcs L036D
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
771 ** lda #$1B
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
772 * sta ,s
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
773 * lda #$30
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
774 * sta $01,s
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
775 * ldy #$0002
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
776 * lda #$01
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
777 * leax ,s
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
778 * os9 I$Write
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
779 * bcs L036D
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
780 * ldb #$8C
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
781 * ldy #$0000
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
782 * os9 I$SetStt
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
783 * clra
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
784 * ldb >$0174
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
785 * tfr d,y
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
786 * lda #$01
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
787 * ldb #$8D
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
788 * os9 I$SetStt
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
789 *L036D leas $02,s
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
790 * rts
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
791
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
792
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
793 * Return the screen to default text sreen and its values
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
794 * deallocate and free memory of high res screen created
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
795
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
796 L0336 leas -2,s Make temp buffer to hold write data
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
797 * tst >$0174 Any hi-res screen # allocated?
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
798 tst scr174 Any hi-res screen # allocated?
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
799 beq L036D No, restore stack & return
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
800 lbsr L02E9 go change the echo,eof,int and quit settings
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
801 bcs L036D had an error restore stack and return
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
802 lda #$1B Setup DefColr sequence in temp buffer
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
803 sta ,s
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
804 lda #$30 Sets palettes back to default color
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
805 sta 1,s
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
806 ldy #$0002 number of bytes to write
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
807 lda #StdOut path to write to $01
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
808 leax ,s point x a buffer
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
809 os9 I$Write write
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
810 bcs L036D we have an error clean stack and leave
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
811
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
812 * Display a screen allocated by SS.AScrn
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
813 * SetStat Function Code $8C
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
814 *
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
815 * entry:
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
816 * a -> path number
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
817 * b -> function code $8C (SS.DScrn)
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
818 * y -> screen numbe
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
819 * 0 = text screen (32 x 16)
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
820 * 1-3 = high resolution screen
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
821 *
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
822 * error:
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
823 * CC -> Carry set on error
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
824 * b -> error code (if any)
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
825
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
826 * a is still set to stdout from above
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
827 ldb #SS.DScrn Display screen function code
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
828 ldy #$0000 Display screen #0 (lo-res or 32x16 text)
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
829 os9 I$SetStt make the call
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
830
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
831 * Frees the memory of a screen allocated by SS.AScrn
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
832 * SetStat Function Code $8C
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
833 *
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
834 * entry:
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
835 * a -> path number
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
836 * b -> function code $8D (SS.FScrn)
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
837 * y -> screen number 1-3 = high resolution screen
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
838 *
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
839 * error:
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
840 * CC -> Carry set on error
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
841 * b -> error code (if any)
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
842
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
843 clra clear high byte
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
844 ldb scr174 Get hi-res screen # again
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
845 tfr d,y move it to Y=screen #
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
846 lda #StdOut set the path $01
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
847 ldb #SS.FSCrn Return screen memory to system
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
848 os9 I$SetStt amke the call
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
849
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
850 L036D leas 2,s Eat stack & return
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
851 rts
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
852
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
853
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
854
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
855 * Unload the other modules
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
856 L0370 leax >L0106,pcr shdw name string
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
857 lda #Prgrm+Objct #$11 module type
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
858 lbsr L040B unload it
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
859 leax >L010B,pcr scrn name string
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
860 lbsr L040B unload it
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
861 leax >L0110,pcr mnln name string
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
862 lbsr L040B unload it
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
863 rts
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
864
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
865 *L0388 orcc #$50
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
866 * lda <u0042
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
867 * sta >$FFA9
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
868 * ldx <u0043
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
869 * ldd >L0104,pcr
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
870 * std $01,x
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
871 * stb >$FFAA
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
872 * ldd >L0102,pcr
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
873 * std -$01,x
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
874 * stb >$FFA9
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
875 * andcc #$AF
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
876 * clra
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
877 * ldb >L0119,pcr
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
878 * andb #$03
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
879 * tfr d,x
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
880 * lda #$01
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
881 * ldb #$92
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
882 * os9 I$SetStt
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
883 * rts
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
884 **
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
885 *L03B6 tfr x,d
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
886 * exg a,b
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
887 * lsrb
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
888 * lsrb
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
889 * lsrb
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
890 * lsrb
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
891 * lsrb
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
892 * pshs b
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
893 * ldu #$FFA8
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
894 * lda b,u
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
895 * incb
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
896 * andb #$07
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
897 * ldb b,u
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
898 * tfr d,u
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
899 * puls a
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
900 * rts
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
901
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
902
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
903 * Restore original MMU block numbers
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
904 L0388 orcc #IntMasks Shut off interrupts
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
905 lda <u0042 get MMU Block #
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
906 sta >$FFA9 Restore original block 0 onto MMU
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
907 ldx <u0043
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
908 ldd >L0104,pc Origanl 3rd block of MMU
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
909 std 1,x
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
910 stb >$FFAA Restore original block 1 onto MMU
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
911 ldd >L0102,pc Original 2nd block of MMU
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
912 std -1,x
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
913 stb >$FFA9 Restore block 0 again
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
914 andcc #^IntMasks Turn interrupts back on
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
915
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
916 * return monitor type to original value
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
917 clra
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
918 ldb >L0119,pc Get original monitor type
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
919 andb #$03 Force to only legit values
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
920 tfr d,x Move to proper register
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
921 lda #StdOut set path $01
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
922 ldb #SS.Montr Restore original monitor type
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
923 os9 I$SetStt make the call
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
924 rts
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
925
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
926 * twiddles address
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
927 * called with value to be twiddled in X
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
928 * returns block # in a
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
929 * ????? in u
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
930 L03B6 tfr x,d Move address to D
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
931 exg a,b Swap MSB/LSB
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
932 lsrb Divide MSB by 32 (calculate 8k block # in proc map)
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
933 lsrb
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
934 lsrb
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
935 lsrb
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
936 lsrb
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
937 pshs b Save block # in process map
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
938 ldu #$FFA8 Point to start of user DAT image
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
939 lda b,u
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
940 incb
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
941 andb #$07
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
942 ldb b,u
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
943 tfr d,u
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
944 puls a
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
945 rts
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
946
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
947
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
948
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
949 *************************************************************
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
950 * Called from within sub at L0229
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
951 * entry:
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
952 * x -> is loaded with the address of the name string to load
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
953 * u -> contains some arbitrary value
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
954 *
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
955
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
956 L03D0 leas -$08,s Make a little scratch on the stack
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
957 stu ,s pointer to our buffer
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
958
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
959 * Loads one or more modules from a file but does not map the module
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
960 * into user's address space F$NMLoad
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
961 * entry:
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
962 * a -> type/language byte
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
963 * x -> address of the path list
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
964 * with out path list default path is current execution dir
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
965 *
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
966 * exit:
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
967 * a -> type/language
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
968 * b -> module revision
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
969 * x -> address of the last byte in the pathlist + 1
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
970 * y -> storageb requirements of the module
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
971 *
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
972 * error:
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
973 * b -> error code if any
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
974 * cc -> carry set on error
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
975
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
976 stx $02,s pointer module name
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
977 lda #Prgrm+Objct $11 module type
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
978 os9 F$NMLoad Load it but don't map it in
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
979 bcs L0408 exit on error
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
980
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
981 * Links to a memory module that has the specified name, language and type
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
982 * entry:
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
983 * a -> type/language byte
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
984 * x -> address of the module name
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
985 *
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
986 * exit:
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
987 * a -> type/language
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
988 * b -> attributes/module revision
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
989 * x -> address of the last byte in the modulename + 1
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
990 * y -> module entry point absolute address
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
991 * u -> module header abosolute address
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
992 *
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
993 * error:
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
994 * cc -> set on error
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
995
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
996 ldx $02,s get our name string again
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
997 os9 F$Link link it
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
998 bcs L0408 exit on error
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
999 stu $06,s store module header address
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1000 tfr u,x
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1001 L03E8 stx $04,s
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1002 lbsr L03B6 Go twiddle with address`
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1003 ldx ,s
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1004 leax a,x
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1005 exg d,u
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1006 sta ,x
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1007 exg d,u
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1008 cmpa #$06
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1009 beq L0403
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1010 ldx $04,s
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1011 leax >$2000,x
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1012 bra L03E8
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1013
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1014 L0403 ldu $06,s
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1015 os9 F$UnLink
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1016 L0408 leas $08,s
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1017 rts
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1018
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1019 L040B os9 F$UnLoad Unlink a module by name
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1020 bcc L040B
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1021 clrb
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1022 rts
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1023
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1024 L0412 fcc '/VI'
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1025 L0415 fcb C$CR
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1026 L0416 fdb $0000 address of the device table entry
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1027 L0418 fcb $00 path number to device
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1028
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1029 **************************************************************
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1030 *
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1031 * subroutine entry is L0419
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1032 * sets up Sig Intercept
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1033 * verifies /VI device is loaded links to it
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1034 * and allocates ram for it
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1035 * called from dispatch table around L0120
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1036
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1037
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1038 * Set signal intercept trap
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1039 * entry:
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1040 * x -> address of intercept routine
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1041 * u -> starting adress of routines memory area
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1042 * exit:
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1043 * Signals sent to the process cause the intercept to be
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1044 * called instead of the process being killed
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1045
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1046 L0419 ldu #$0000 start of Sierra memory area
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1047 ldx #int5EE Intercept rourtine copied to mem area
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1048 os9 F$Icpt install the trap
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1049
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1050 * Attach to the vrt memory descriptor
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1051 * Attaches and verifies loaded the VI descriptor
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1052 * entry:
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1053 * a -> access mode
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1054 * 0 = use any special device capabilities
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1055 * 1 = read only
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1056 * 2 = write only
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1057 * 3 = update (read and write)
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1058 * x -> address of device name string
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1059 *
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1060 * exit:
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1061 * x -> updated past device name
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1062 * u -> address of device table entry
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1063 *
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1064 * error:
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1065 * b -> error code (if any)
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1066 * cc -> carry set on error
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1067
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1068 lda #$01 attach for read
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1069 leax >L0412+1,pcr skip the slash Load VI only
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1070 os9 I$Attach make the call
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1071 bcs L0451 didn't work exit
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1072 stu >L0416,pcr did work save address
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1073
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1074 * Open a path to the device /VI
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1075 * entry:
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1076 * a -> access mode (D S PE PW PR E W R)
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1077 * x -> address of the path list
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1078 *
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1079 * exit:
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1080 * a -> path number
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1081 * x -> address of the last byte if the pathlist + 1
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1082 *
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1083 * error:
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1084 * b -> error code(if any)
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1085 * cc -> carry set on error
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1086 *
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1087 * a still contains $01 read
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1088 leax >L0412,pcr load with device name including /
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1089 os9 I$Open make the call
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1090 bcs L0451 didn't work exit
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1091 sta >L0418,pcr did work save path #
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1092
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1093 * Allocate process+path RAM blocks
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1094
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1095 ldb #SS.ARAM $CA function code for VIRQ
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1096 ldx #$000C
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1097 os9 I$SetStt make the call
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1098 bcs L0451
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1099 pshs x
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1100
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1101 * Set process+path VIRQ KQ3
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1102 ldb #SS.KSet $C8 function code for VIRQ
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1103 os9 I$SetStt
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1104 puls b,a
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1105 L0451 rts
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1106
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1107 * Signal Intercept processing gets copied to int5EE mem slot
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1108 L0452 cmpb #$80 b gets the signal code if not $80 ignore
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1109 bne L0464 $80 is user defined
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1110 tfr u,d
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1111 tfr a,dp
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1112 dec <u004A
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1113 bne L0464
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1114 bsr L0465
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1115 lda #$03
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1116 sta <u004A
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1117 L0464 rti
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1118
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1119 L0465 inc >u024C,u
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1120 bne L047B
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1121 inc >u024B,u
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1122 bne L047B
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1123 inc >u024A,u
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1124 bne L047B
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1125 inc >u0249,u
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1126 L047B tst >u0102,u
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1127 bne L04BC
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1128 inc <u003F
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1129 bne L0487
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1130 inc <u003E
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1131 L0487 ldd <u0048
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1132 addd #$0001
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1133 std <u0048
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1134 cmpd #$0014
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1135 bcs L04BC
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1136 subd #$0014
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1137 std <u0048
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1138 ldd #$003C
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1139 leax >u043D,u
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1140 inc ,x
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1141 cmpb ,x
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1142 bhi L04BC
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1143 sta ,x+
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1144 inc ,x
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1145 cmpb ,x
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1146 bhi L04BC
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1147 sta ,x+
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1148 inc ,x
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1149 ldb #$18
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1150 cmpb ,x
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1151 bhi L04BC
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1152 sta ,x+
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1153 inc ,x
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1154 L04BC rts
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1155
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1156 * deallocates the VIRQ device
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1157 L04BD lda >L0418,pcr load path number to /VI device
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1158 beq L04D0 no path open check for device table addr
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1159 ldb #SS.KClr $C9 Clear KQ3 VIRQ
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1160 os9 I$SetStt make the call
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1161 ldb #SS.DRAM $CB deallocate the ram
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1162 os9 I$SetStt make the call
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1163 os9 I$Close close the path to /VI
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1164 L04D0 ldu >L0416,pcr load device table address for VI
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1165 beq L04D9 don't have one leave now
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1166 os9 I$Detach else detach it
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1167 L04D9 rts
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1168
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1169 * Twiddles with MMU blocks for us
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1170 * This sub gets copied into $0659 and executed there from this and
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1171 * the other modules this one loads (sub659)
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1172 *
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1173 * s and x loaded by calling routine
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1174
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1175 L04DA ldd ,s++ load d with current stack pointer and bump it
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1176 * from mnln we come in with $4040
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1177 std <u002A save the calling stack pointer in u002A
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1178 * orcc #$50
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1179 orcc #IntMasks mask the interrupts
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1180 lda <u0042
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1181 sta ,x x is loaded with value from u0028 in mnln
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1182 sta >$FFA9 task 1 block 2 x2000 - x3FFF
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1183 ldu <u0043
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1184 lda $06,x
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1185 sta u000C,u
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1186 sta >$FFAF task 1 block 8 xE000 - xFFFF
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1187 lda $05,x
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1188 sta u000A,u
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1189 sta >$FFAE task 1 block 7 xC000 - xDFFF
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1190 lda $04,x
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1191 sta u0008,u
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1192 sta >$FFAD task 1 block 6 xA000 - xBFFF
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1193 lda $03,x
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1194 sta u0006,u
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1195 sta >$FFAC task 1 block 5 x8000 - x9FFF
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1196 lda $02,x
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1197 sta u0004,u
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1198 sta >$FFAB task 1 block 4 x6000 - x7FFF
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1199 * andcc #$AF
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1200 andcc #^IntMasks unmask interrupts
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1201
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1202 lda $07,x
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1203 ldu <u002E
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1204 adda u000A,u
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1205 jsr a,u
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1206
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1207 orcc #IntMasks
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1208 lda <u0042
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1209 sta >$FFA9
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1210 ldu <u0043
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1211 lda <u0010
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1212 sta u000C,u
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1213 sta >$FFAF
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1214 lda <u000F
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1215 sta u000A,u
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1216 sta >$FFAE
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1217 lda <u000E
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1218 sta u0008,u
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1219 sta >$FFAD
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1220 lda <u000D
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1221 sta u0006,u
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1222 sta >$FFAC
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1223 lda <u000B
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1224 sta u0002,u
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1225 sta >$FFAA
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1226 lda <u000A
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1227 sta ,u
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1228 sta >$FFA9
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1229 andcc #^IntMasks
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1230
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1231 jmp [>$002A]
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1232
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1233 L054F fcb $00,$00,$00,$00,$00,$00,$00,$00 ........
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1234 L0557 fcb $73,$69,$65,$72,$72,$61,$00 sierra.
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1235 emod
979b7f290efc First pass disassembly and comments. Comments from 1992 disasm included. Requires Level 2 defs set Level equ 2 in this file should be in a defsfile.
pwz
parents: 814
diff changeset
1236 eom equ *