57
|
1 6809 Simulator/Emulator for OS9
|
|
2 =======================
|
|
3
|
|
4 sbc09 stands for Lennart Benschop 6809 Single Board Computer.
|
|
5 It contains a assembler and simulator for the Motorola M6809 processor.
|
|
6
|
|
7 copyleft (c) 1994-2014 by the sbc09 team, see AUTHORS for more details.
|
|
8 license: GNU General Public License version 2, see LICENSE for more details.
|
|
9
|
|
10
|
|
11 Forum thread: http://archive.worldofdragon.org/phpBB3/viewtopic.php?f=8&t=4880
|
|
12 Project: https://github.com/6809/sbc09
|
|
13
|
|
14
|
|
15 For the usage of the assembler a09 and 6809 single board system v09
|
|
16 read doc/sbc09.creole!
|
|
17
|
|
18
|
|
19 This distribution includes
|
|
20 1. The 6809 single board system as a stand alone environment built as v09
|
|
21 1. with CoCo like MMU v09c
|
|
22
|
|
23 How to make
|
|
24 ---------
|
|
25
|
|
26 make clean; make
|
|
27
|
|
28
|
|
29 How to run
|
|
30 ---------
|
|
31
|
|
32 make lv1
|
|
33
|
|
34 or
|
|
35
|
|
36 make lv2
|
|
37
|
|
38 vrbf mount current directory on /v0, put os9 command there.
|
|
39
|
|
40 You can add os9 disk image using -0 or -1 option ( ex. https://github.com/sorenroug/osnine-java.git )
|
|
41
|
|
42 src/v09 -rom src/os9/os9lv1.rom -0 OS9.dsk -1 WORK.dsk
|
|
43
|
|
44 src/v09c -rom src/os9/os9lv2.rom -0 OS9.dsk -1 WORK.dsk
|
|
45
|
131
|
46 use -nt for trace debug without timmer interrupt.
|
|
47
|
57
|
48
|
|
49 Structure
|
|
50 ---------
|
|
51
|
|
52 src/
|
|
53 a09.c
|
|
54 The 6809 assembler. It's fairly portable (ANSI) C. It works on Unix
|
|
55
|
|
56 Features of the assembler:
|
|
57 - os9 directives
|
|
58 - Statements MACRO, PUBLIC, EXTERN IF/ELSE/ENDIF INCLUDE not yet
|
|
59 implemented.
|
|
60
|
|
61 v09.c
|
|
62 engine.c
|
|
63 io.c
|
|
64 trace.c
|
|
65 The 6809 single board simulator/emulator v09.
|
|
66 -DUSE_MMU to use MMU
|
|
67 vdisk.c
|
|
68 mount current directory on /v0 using VRBF
|
|
69
|
|
70 d09.c
|
|
71 6809 disassembler with os9 feature
|
|
72
|
|
73 os9/
|
|
74 makerom.c make rom for level1 and level2
|
|
75 os9mod.c check os9 module
|
|
76 -s skip fill bytes
|
|
77 crc.c os9 crc checker
|
|
78 level1 os9 level1 module
|
|
79 clock.asm
|
|
80 d0.asm
|
|
81 d1.asm
|
|
82 v0.asm
|
|
83 init.asm
|
|
84 pdisk.asm
|
|
85 printer.asm
|
|
86 pty-dd.asm
|
|
87 pty.asm
|
|
88 level2 os9 level2 module
|
|
89 boot.asm
|
|
90 defsfile
|
|
91 init.asm
|
|
92 clock.asm
|
|
93 sysgo.asm
|
|
94 vector.asm
|
|
95 vrbf.asm virtual rbf manager
|
|
96 v0.asm
|
|
97
|
|
98 v09/v09c feature
|
|
99
|
|
100 Usage: v09 [-rom rom-image] [-t tracefile [-tl addr] [-nt][-th addr] ] [-e escchar]
|
|
101 [-0 diskImage0] [-1 diskImage1]
|
|
102
|
88
|
103 with Coco MMU
|
|
104 Usage: v09c [-rom rom-image] [-t tracefile [-tl addr] [-nt][-th addr] ] [-e escchar]
|
57
|
105 [-0 diskImage0] [-1 diskImage1]
|
|
106
|
|
107 -nt start with trace on
|
|
108 -rom options use irq ( not firq ) timer, timer will not start until timer IO command
|
|
109 vrbf default is a current directory
|
|
110
|
|
111 v09 tracing command ( may be very slow )
|
|
112
|
|
113 v09>h
|
|
114 s [count] one step trace (default)
|
|
115 n step over call or os9 system call
|
|
116 f finish this call (until stack pop) (unreliable)
|
|
117 b [adr] set break / watch point (on current physical address)
|
|
118 it stoped on pc==adr or value of adr was changed
|
|
119 B break / watch point list
|
|
120 d [n] delte break point list
|
|
121 c [count] continue;
|
|
122 x disassemble on pc
|
|
123 x [adr] [count] dump
|
|
124 xp page [adr] [count] mmu page dump
|
|
125 xi [adr] [count] disassemble
|
|
126 0 file disk drive 0 image
|
|
127 1 file disk drive 1 image
|
|
128 L file start log to file
|
|
129 S file set input file
|
|
130 X exit
|
|
131 q exit
|
|
132 U file upload from srecord file
|
|
133 D file download to srecord file
|
|
134 R do reset (unreliable)
|
|
135 h,? print this
|
|
136
|
|
137 to see GIME
|
|
138 x 0xff90
|
|
139
|
|
140 a09 Assembler for os9
|
|
141 -------------
|
|
142
|
|
143 mod eom,name,tylg,atrv,start,size define os9 mod with crc
|
|
144 . data pointer ( same as *, only works just after the mod )
|
|
145 * code pointer
|
|
146 emod
|
|
147
|
|
148 os9 os9 system call
|
|
149 end
|
|
150
|
|
151 fcs generates os9 string with 8th bit on termination
|
|
152
|
|
153 use use os9 sources ( subsequent use/lib follow the directories )
|
|
154
|
|
155 accepts some more chars in names such as $ . _
|
|
156
|
|
157
|
88
|
158 os9 command
|
|
159 -------------
|
|
160 src/os9/level1/cmds
|
|
161 src/os9/level2/cmds
|
|
162
|
|
163 sbc09 sbc09 emulator on os9
|
131
|
164 OS9: sbc09 kernel09.s
|
|
165 OS9: sbc09 basic.s
|
88
|
166
|
|
167 Todo ( program load command on game09 and forth )
|
|
168
|
131
|
169 ================
|
|
170
|
|
171 Micro C
|
|
172 -------------
|
|
173 src/os9/mc09
|
|
174 only working on level2
|
|
175
|
|
176 OS9: mc09/mc-s -Mtestcp test/cp.c
|
|
177
|
|
178 % src/a09 crtos9.asm -l c.lst -o testcp
|
|
179
|
|
180
|
|
181 GAME09
|
|
182 -------------
|
|
183 game09
|
|
184 src/os9/level[12]/game09
|
|
185
|
|
186 OS9: game09
|
|
187
|
|
188 > \LD "game09/asm09.game"
|
|
189 > #=1
|
|
190
|
|
191 TL/1
|
|
192 -------------
|
|
193 TL/1
|
|
194
|
|
195 OS9: tl1 tl1/test/t1.tl1
|
|
196
|
|
197
|
57
|
198 Links/References
|
|
199 ================
|
|
200
|
|
201
|
|
202 Project:
|
|
203 https://github.com/6809/sbc09
|
|
204 Maintained by the original author and others.
|
|
205
|
|
206 Source:
|
|
207 http://groups.google.com/group/alt.sources/browse_thread/thread/8bfd60536ec34387/94a7cce3fdc5df67
|
|
208 Autor: Lennart Benschop lennart@blade.stack.urc.tue.nl,
|
|
209 lennartb@xs4all.nl (Webpage, Subject must start with "Your Homepage"!)
|