annotate level2/modules/krnp4_regdump.asm @ 2926:53961f90b9dd

d64/makefile: Stop building if error in subdirectory build
author Tormod Volden <debian.tormod@gmail.com>
date Sat, 18 Jan 2014 09:54:17 +0100
parents ebf319736e9c
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
747
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
1 ********************************************************************
1587
5f18094d961d kernel modules renamed to krn, updated makefiles, clock2_tc3 now clock2_cloud9...
boisy
parents: 1369
diff changeset
2 * krnp4 - User Register Dump System Call for NitrOS9 Level 2
747
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
3 *
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
4 * $Id$
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
5 *
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
6 * Copyright February,1989 by Ron Lammardo
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
7 *
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
8 * This system call can be used in an application program to dump the
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
9 * current contents of all user registers in Hex,Decimal,Binary and Ascii
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
10 * (Registers "A" and "B" Only). This module MUST be present in the
1748
949d4df97cca Fixed some comments, made better use of symbolics
boisy
parents: 1668
diff changeset
11 * bootfile. If no krnp5 module is found,change the "mname" and "nextname"
747
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
12 * as appropriate.
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
13 *
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
14 * If there is a conflict with the code used for this system called, it can
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
15 * be changed by resetting the equate at "F$RegDmp"
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
16 *
1369
de053e06fdce Changes
boisy
parents: 1348
diff changeset
17 * NOTE: All registers EXCEPT 'CC' are preserved....NitrOS9 internally resets
747
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
18 * the condition code register upon service call exit.
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
19 *
1348
8e804211cb25 Fixed sources to have new style change logs at top
boisy
parents: 1289
diff changeset
20 * Edt/Rev YYYY/MM/DD Modified by
8e804211cb25 Fixed sources to have new style change logs at top
boisy
parents: 1289
diff changeset
21 * Comment
747
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
22 * ------------------------------------------------------------------
1348
8e804211cb25 Fixed sources to have new style change logs at top
boisy
parents: 1289
diff changeset
23 * 1 1989/02/?? Ron Lammardo
8e804211cb25 Fixed sources to have new style change logs at top
boisy
parents: 1289
diff changeset
24 * Started.
2733
ebf319736e9c Adjusted disk format for dw .dsk's, took a blank line out of regdmp to compact its display
gheskett
parents: 2111
diff changeset
25 * 2 2012/11/22 Gene Heskett
ebf319736e9c Adjusted disk format for dw .dsk's, took a blank line out of regdmp to compact its display
gheskett
parents: 2111
diff changeset
26 * Remove final cr to save screen space
747
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
27
1587
5f18094d961d kernel modules renamed to krn, updated makefiles, clock2_tc3 now clock2_cloud9...
boisy
parents: 1369
diff changeset
28 nam krnp4
1369
de053e06fdce Changes
boisy
parents: 1348
diff changeset
29 ttl User Register Dump System Call for NitrOS9 Level 2
747
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
30
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
31 ifp1
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
32 use defsfile
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
33 endc
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
34
1748
949d4df97cca Fixed some comments, made better use of symbolics
boisy
parents: 1668
diff changeset
35 tylg set Systm+Objct
949d4df97cca Fixed some comments, made better use of symbolics
boisy
parents: 1668
diff changeset
36 atrv set ReEnt+revision
1289
d13864ef3317 Changed to rev 0
boisy
parents: 747
diff changeset
37 revision set 0
747
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
38 edition set 1
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
39
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
40 mod eom,name,tylg,atrv,start,0
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
41
1668
08c3460dab82 Capitalized K in Krn
boisy
parents: 1587
diff changeset
42 name fcs /KrnP4/ name of this module
747
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
43 fcb edition
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
44
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
45 svctabl fcb F$RegDmp F$RegDmp code
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
46 fdb regdmp-*-2 offset to actual code
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
47 fcb $80 end of table
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
48
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
49 start leay <svctabl,pcr point to service table
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
50 os9 F$SSvc insert the new op code in the table
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
51 lda #tylg get next module type (same as this one!)
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
52 leax <nextname,pcr get address of next module name
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
53 os9 F$Link attempt to link to it
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
54 bcs endsetup no good...skip this
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
55 jsr ,y else go execute it
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
56 endsetup rts return back to previous module
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
57
1587
5f18094d961d kernel modules renamed to krn, updated makefiles, clock2_tc3 now clock2_cloud9...
boisy
parents: 1369
diff changeset
58 nextname fcc /krnp5/ next module name to link to
1748
949d4df97cca Fixed some comments, made better use of symbolics
boisy
parents: 1668
diff changeset
59 fcb C$CR
747
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
60
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
61 regdmp equ *
2111
6ccd6e25a441 Fixed issues with pshs and puls of 6309 registers -- a nono!
boisy
parents: 1748
diff changeset
62 pshs cc,a,b,dp,x,y,u save all registers
747
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
63 IFNE H6309
2111
6ccd6e25a441 Fixed issues with pshs and puls of 6309 registers -- a nono!
boisy
parents: 1748
diff changeset
64 pshsw
747
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
65 ENDC
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
66 tfr u,y transfer addresses
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
67 leas -60,s back up for some variable storage
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
68 leau 4,s buffer starts here
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
69 clr ,u+ set flag to print ascii char
1748
949d4df97cca Fixed some comments, made better use of symbolics
boisy
parents: 1668
diff changeset
70 lda #C$SPAC get a space
747
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
71 ldb #50 number of chars to clear
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
72 tfr u,x set register for loop
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
73
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
74 clrloop sta ,x+ initialize a space
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
75 decb decrement counter
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
76 bne clrloop if more..loop back & clear another
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
77 lbsr reg060 send a <cr>
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
78 leax reg080,pcr point to start of control table
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
79 clra clear msb of register
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
80 ldb R$A,y get register from stack
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
81 bsr reg000 dump register A
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
82 ldb R$B,y get register from stack
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
83 bsr reg000 dump register B
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
84 IFNE H6309
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
85 ldb R$E,y get register from stack
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
86 bsr reg000 dump register E
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
87 ldb R$F,y get register from stack
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
88 bsr reg000 dump register F
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
89 ENDC
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
90 inc -1,u turn off ascii char print flag
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
91 ldd R$X,y get register from stack
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
92 bsr reg000 dump register X
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
93 ldd R$Y,y get register from stack
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
94 bsr reg000 dump regisetr Y
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
95 ldd R$U,y get register from stack
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
96 bsr reg000 dump register U
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
97 ldb R$CC,y get register from stack
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
98 bsr reg000 dump register CC
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
99 ldb R$DP,y get register from stack
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
100 bsr reg000 dump register DP
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
101 ldd R$PC,y get user Task Number
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
102 bsr reg000 dump register PC
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
103 ldy <D.Proc get address of users process descriptor
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
104 ldd P$SP,y get users stack address
1748
949d4df97cca Fixed some comments, made better use of symbolics
boisy
parents: 1668
diff changeset
105 addd #R$Size add on for registers which were saved
747
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
106 bsr reg000 dump register S
2733
ebf319736e9c Adjusted disk format for dw .dsk's, took a blank line out of regdmp to compact its display
gheskett
parents: 2111
diff changeset
107 * lbsr reg060 send a <CR>
747
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
108 leas 60,s restore stack pointer
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
109 IFNE H6309
2111
6ccd6e25a441 Fixed issues with pshs and puls of 6309 registers -- a nono!
boisy
parents: 1748
diff changeset
110 pulsw
6ccd6e25a441 Fixed issues with pshs and puls of 6309 registers -- a nono!
boisy
parents: 1748
diff changeset
111 ENDC
747
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
112 puls cc,a,b,dp,x,y,u,pc restore all registers and return
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
113
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
114 * Dump a register in "D"
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
115 * X = Control Table Location
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
116 * U = Output buffer Location
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
117
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
118 reg000 pshs y save y register
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
119 tfr d,y register in y
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
120 lda ,x # of bytes
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
121 leax 3,x point past table entry
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
122 pshs a,x,y,u save registers
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
123 ldd -2,x get register name
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
124 std ,u++ move to buffer
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
125 ldd #"=$ get chars
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
126 std ,u++ move to buffer
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
127 ldd 3,s get reg
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
128 lbsr gethex convert to hex
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
129 tst 0,s 1 byte ?
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
130 bne reg010 no...skip this
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
131 ldd 2,u get 2 lsb's
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
132 std ,u store in msb's
1748
949d4df97cca Fixed some comments, made better use of symbolics
boisy
parents: 1668
diff changeset
133 ldd #C$SPAC*256+C$SPAC get two spaces
747
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
134 std 2,u store in lsb's
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
135
1748
949d4df97cca Fixed some comments, made better use of symbolics
boisy
parents: 1668
diff changeset
136 reg010 ldd #C$SPAC*256+'# get a space and "#"
747
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
137 std 4,u move in two spaces
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
138 leau 6,u point to start of decimal output buffer
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
139 ldd 3,s get register
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
140 lbsr getdec convert to decimal
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
141 tst 0,s is it one byte
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
142 bne reg020 no..skip this
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
143 ldd 2,u else get third & fourth chars
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
144 std ,u store as first two
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
145 lda 4,u get fifth char
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
146 sta 2,u store as third
1748
949d4df97cca Fixed some comments, made better use of symbolics
boisy
parents: 1668
diff changeset
147 ldd #C$SPAC*256+C$SPAC get two spaces
747
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
148 std 3,u store as 4th & 5th chars
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
149
1748
949d4df97cca Fixed some comments, made better use of symbolics
boisy
parents: 1668
diff changeset
150 reg020 ldd #C$SPAC*256+'% get a blank & "%"
747
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
151 std 5,u move it to buffer
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
152 leau 7,u point to start of binary output area
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
153 tfr a,b space in 'b'
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
154 std 16,u space out ascii char
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
155 ldd 3,s get register
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
156 bsr getbin convert to binary
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
157 tst 0,s check byte count
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
158 bne reg040 skip if two bytes
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
159 ldb #8 loop counter
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
160
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
161 reg030 lda 8,u get two chars from second 8 digits
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
162 sta ,u+ store in first 8 digits
1748
949d4df97cca Fixed some comments, made better use of symbolics
boisy
parents: 1668
diff changeset
163 lda #C$SPAC get space
747
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
164 sta 7,u store in second 8 digits
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
165 decb decrement counter
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
166 bne reg030 loop back if not done
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
167 leau -8,u back up to beginning of binary digit output
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
168 ldb 4,s get lsb of register
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
169 tst -18,u check if we want to print ascii char
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
170 bne reg040 nope..skip this
1748
949d4df97cca Fixed some comments, made better use of symbolics
boisy
parents: 1668
diff changeset
171 cmpb #C$SPAC compare char with space
747
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
172 blo reg040 if lower..skip this
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
173 cmpb #'z compare with last alpha char
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
174 bhi reg040 if higher..skip this
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
175 stb 17,u else store the char
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
176
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
177 reg040 lda #C$CR get a <cr>
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
178 sta 18,u and store it
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
179 leax -17,u back up to buffer start
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
180 bsr reg070 send it
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
181 clra clear msb for next reg
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
182 puls b,x,y,u restore registers
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
183 puls y,pc restore y & return
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
184
1748
949d4df97cca Fixed some comments, made better use of symbolics
boisy
parents: 1668
diff changeset
185 reg050 fcb C$CR
747
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
186
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
187 reg060 leax <reg050,pcr point to <cr>
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
188
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
189 reg070 pshs x,y,u,a,b save registers
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
190 ldy <D.Proc get process descriptor address
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
191 lda P$Path+2,y get user error path number
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
192 pshs a save it
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
193 ldu P$SP,y get user stack address
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
194 leau -50,u back off to make room
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
195 lda <D.SysTsk get system task number
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
196 ldb P$Task,y get users task number
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
197 ldy #40 chars to move
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
198 os9 F$Move move from system to user space
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
199 tfr u,x restore buffer address
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
200 puls a restore user error path number
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
201 os9 I$WritLn send it
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
202 puls x,y,u,a,b,pc restore registers & return
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
203
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
204 * Control Table - Format is :
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
205 * Byte count (0=1,1=2)
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
206 * Register name (Two chars)
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
207
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
208 reg080 fcb 0
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
209 fcc /a /
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
210 fcb 0
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
211 fcc /b /
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
212 IFNE H6309
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
213 fcb 0
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
214 fcc /e /
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
215 fcb 0
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
216 fcc /f /
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
217 ENDC
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
218 fcb 1
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
219 fcc /x /
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
220 fcb 1
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
221 fcc /y /
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
222 fcb 1
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
223 fcc /u /
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
224 fcb 0
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
225 fcc /cc/
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
226 fcb 0
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
227 fcc /dp/
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
228 fcb 1
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
229 fcc /pc/
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
230 fcb 1
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
231 fcc /s /
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
232
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
233
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
234 * Convert "D" to binary digits in buffer "U"
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
235
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
236 getbin pshs u,b save 'u', second byte of register
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
237 bsr bin010 convert first byte
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
238 puls a get second byte
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
239 bsr bin010 convert it
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
240 puls u,pc restore 'u' and return
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
241
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
242 bin010 bita #%10000000 check bit
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
243 bsr bin020 print result
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
244 bita #%01000000
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
245 bsr bin020
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
246 bita #%00100000
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
247 bsr bin020
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
248 bita #%00010000
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
249 bsr bin020
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
250 bita #%00001000
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
251 bsr bin020
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
252 bita #%00000100
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
253 bsr bin020
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
254 bita #%00000010
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
255 bsr bin020
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
256 bita #%00000001
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
257
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
258 bin020 beq bin030 skip this if bit was set
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
259 ldb #'1 else get an ascii '1'
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
260 bra bin040 skip next
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
261
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
262 bin030 ldb #'0 bit not set...get an ascii '0'
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
263
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
264 bin040 stb ,u+ store the ascii char
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
265 rts
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
266
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
267 * Convert "D" to 4 hex digits in buffer "U"
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
268
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
269 gethex pshs u,b save 'u',second register byte
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
270 bsr gth010 convert first byte
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
271 puls a restore second byte
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
272 bsr gth010 convert it
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
273 puls u,pc restore 'u' and return
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
274
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
275 gth010 pshs a save the byte
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
276 lsra shift left 4 bits to right
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
277 lsra
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
278 lsra
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
279 lsra
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
280 bsr gth020 convert to hex digit
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
281 puls a restore the byte
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
282 anda #$0f strip off high 4 digits
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
283
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
284 gth020 adda #'0 make it ascii
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
285 cmpa #$3a is it a letter
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
286 blt gth030 nope..skip this
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
287 adda #7 else add bias
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
288
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
289 gth030 sta ,u+ store the ascii character
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
290 rts return
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
291
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
292 * Convert "D" to 5 decimal digits in buffer at "U"
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
293 getdec pshs x,y,u save registers
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
294 ldx #10000 get decimal number for subtraction
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
295 bsr gtd010 get the decimal digit
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
296 ldx #01000
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
297 bsr gtd010
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
298 ldx #00100
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
299 bsr gtd010
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
300 ldx #00010
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
301 bsr gtd010
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
302 ldx #00001
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
303 bsr gtd010
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
304 puls x,y,u,pc restore registers & return
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
305
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
306 gtd010 pshs x,a save x register & extra byte
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
307 clr ,s clear counter
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
308
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
309 gtd020 cmpd 1,s compare 'd' with 'x' on stack
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
310 blo gtd030 less...skip this
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
311 subd 1,s else subtract number on stack
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
312 inc ,s increment digit counter
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
313 bra gtd020 and loop back
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
314
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
315 gtd030 std 1,s save remainder of number
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
316 ldb ,s+ get counter
1748
949d4df97cca Fixed some comments, made better use of symbolics
boisy
parents: 1668
diff changeset
317 addb #'0 make it ascii
747
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
318 stb ,u+ and move it as output
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
319 puls d,pc restore remainder & return
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
320
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
321 emod
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
322 eom equ *
27033c1dd023 Moved os9p3 and os9p4 to OS-9 Level Two distribution
boisy
parents:
diff changeset
323 end