*
* :*:*:*:*:*:*:*:*:*:*:*:*:*:*:*:*:*:*:*:*:*:*:*:*:*:*:*:*:*:*:*
*
* Program messages
*
intros:	dc.b	cr,lf,lf,'The POSIE Distributed System Monitor Board'
     dc.b   cr,lf,'Interpretation Processor Monitor'
	dc.b	cr,lf,'Version 1.0, October 1990'
	dc.b	cr,lf,lf,'Type ? for help',cr,lf
intron:	ds.w	0	* align
promms:	dc.b	cr,lf,'PDSMB>'
prommn:	ds.w	0
helpms:	dc.b	cr,lf,lf,'A <add1><add2>           Hexadecimal Arithmetic'
	dc.b	cr,lf,'B <addr>                 Set breakpoint at <addr>'
	dc.b	cr,lf,'C <add1><add2> -> <add3> Copy block of memory'
	dc.b	cr,lf,'D <addr>                 Display a block of memory'
	dc.b	cr,lf,'F <add1><add2> = <value> Fills memory with <value>'
	dc.b	cr,lf,'G <addr>                 Start program'
	dc.b	cr,lf,'H <addr>                 Convert hex to decimal'
	dc.b	cr,lf,'I <add1><add2> = <value> Find location not equal <value>'
	dc.b	cr,lf,'J <add1><add2> = <value> Find location equal to <value>'
	dc.b	cr,lf,'K                        Kills breakpoint'
	dc.b	cr,lf,'L                      * Link to remote device'
	dc.b	cr,lf,'M <addr>                 Modify memory'
	dc.b	cr,lf,'P                        Link to auxiliary RS232 port'
	dc.b	cr,lf,'Q                      * Disconnect from network'
	dc.b	cr,lf,'R                        Prints processor registers'
	dc.b	cr,lf,'S <net_addr>           * Set up connection to <net_addr>'
	dc.b	cr,lf,'T <add1> - <add2>        Test memory - DESTROYS CONTENTS'
	dc.b	cr,lf,'U <reg_name> = <value>   Updates saved register'
	dc.b	cr,lf,'V <add1><add2> = <add3>  Compare two blocks of memory'
	dc.b	cr,lf,'W                      * Display network connection'
	dc.b	cr,lf,'X <instr_count>(00-FF)   Trace <instr_count> instrs <space> to halt'
	dc.b	cr,lf,'Z                        Run one instruction'
helpmn:	ds.w	0
arrms:	dc.b	' ->'
arrmn:	ds.w	0
wrerms:	dc.b	' - Write ERROR'
wrermn:	ds.w	0
errms:	dc.b	' - ERROR',bell,cr,lf
errmn:	ds.w	0
tstmes:	dc.b	cr,lf,'TEST #'
tstmen:	ds.w	0
rmcons:	dc.b	cr,lf,'Connected to '
rmconn:	ds.w	0
cants:	dc.b	cr,lf,'Cant connect to ',bell
cantn:	ds.w	0
cantds:	dc.b	cr,lf,'Cant disconnect from ',bell
cantdn:	ds.w	0
cnbrks:	dc.b	cr,lf,'Connection broken',bell
cnbrkn:	ds.w	0
discs:	dc.b	cr,lf,'Disconnect from '
discn:	ds.w	0
nocons:	dc.b	cr,lf,'No network connection set up'
noconn:	ds.w	0
bsetms:	dc.b	cr,lf,'Breakpoint set at '
bsetmn:	ds.w	0
bkilms:	dc.b	cr,lf,'Breakpoint cleared at '
bkilmn:	ds.w	0
nobkms:	dc.b	cr,lf,'No breakpoint set',cr,lf,bell
nobkmn:	ds.w	0
ccrms:	dc.b	'CCR ='
ccrmn:	ds.w	0
srms:	dc.b	'SR ='
srmn:	ds.w	0
pcrms:	dc.b	'PC ='
pcrmn:	ds.w	0
usprms:	dc.b	'USP ='
usprmn:	ds.w	0
brkmss:	dc.b	cr,lf,'Break - ',cr,lf,bell
brkmsn:	ds.w	0
exceps:	dc.b	cr,lf,'Exception - D7/0 holds exception number',cr,lf,bell
excepn:	ds.w	0
regd1s:	dc.b	cr,lf,'   D0       D1       D2       D3       D4       D5       D6       D7',cr,lf
regd1n:	ds.w	0
regd2s:	dc.b	cr,lf,lf,'   A0       A1       A2       A3       A4       A5       A6     A7/SSP',cr,lf
regd2n:	ds.w	0
regd3s:	dc.b	cr,lf,lf,'   SR       PC       USP',cr,lf
regd3n:	ds.w	0
berrms:	dc.b	cr,lf,'Address or bus error -',cr,lf,bell
berrmn:	ds.w	0
errhds:	dc.b	cr,lf,lf,'cyc.type err.addr  instr.',cr,lf
errhdn:	ds.w	0
oddms:	dc.b	cr,lf,'Address must be even',cr,lf,bell
oddmn:	ds.w	0
lfinms:	dc.b	cr,lf,'Load finished',cr,lf
lfinmn:	ds.w	0
labtms:	dc.b	cr,lf,'Load aborted',cr,lf,bell
labtmn:	ds.w	0
*
* :*:*:*:*:*:*:*:*:*:*:*:*:*:*:*:*:*:*:*:*:*:*:*:*:*:*:*:*:*:*:*
*
* Exception vector table
*
vec4	equ ramtop-vecsize+1	* position of RAM jump table
*
	org $000000
*
exvecs:	dc.l	stack	* initial stack pointer
	dc.l	main	* reset entry vector
	dc.l	berr	* bus error
	dc.l	adderr	* address error
	dc.l	vec4	* jump to 8 bytes of RAM instructions
	dc.l	vec4+8
	dc.l	vec4+16
	dc.l	vec4+24
	dc.l	vec4+32
	dc.l	trace	* trace handler entry
	dc.l	vec4+40
	dc.l	vec4+48
	ds.l	12	* no vectors for Motorola reserved exceps
	dc.l	vec4+56	* spurious interrupt
	dc.l	vec4+64	* autovector 1 - 4 bytes in RAM allocated
	dc.l	vec4+68	* 	     2     from now on
	dc.l	vec4+72	* 	     3
	dc.l	vec4+76	* 	     4
	dc.l	vec4+80	* 	     5
	dc.l	vec4+84	* 	     6
	dc.l	vec4+88	* 	     7
	dc.l	trap0	* breakpoint
	dc.l	inch4	* char I/P
	dc.l	outch4	* char O/P
	dc.l	vec4+92	* traps 3 to 15
	dc.l	vec4+96
	dc.l	vec4+100
	dc.l	vec4+104
	dc.l	vec4+108
	dc.l	vec4+112
	dc.l	vec4+116
	dc.l	vec4+120
	dc.l	vec4+124
	dc.l	vec4+128
	dc.l	vec4+132
	dc.l	vec4+136
	dc.l	vec4+140
	ds.l	16		* more reserved vectors
	dc.l	vec4+144	* interrupt vectors 64-79
	dc.l	vec4+148
	dc.l	vec4+152
	dc.l	vec4+156
	dc.l	vec4+160
	dc.l	vec4+164
	dc.l	vec4+168
	dc.l	vec4+172
	dc.l	vec4+176
	dc.l	vec4+180
	dc.l	vec4+184
	dc.l	vec4+188
	dc.l	vec4+192
	dc.l	vec4+196
	dc.l	vec4+200
	dc.l	vec4+204
*
*
	end
