---------------- prompt

"<bochs:%u> "

---------------- supported

dump_cpu -- display registers
	| does new bochs display dr4&5??
s -- step
	|(0) f000:e05b: b00f: mov AL, #0f
c -- go
	| ?
trace-on -- enable tracing on 'go'
	|Tracing enabled
trace-off -- disable tracing on 'go'
	|Tracing disabled
^c -- stop a 'go'
	| ?
q -- quit
	| nada
vb [seg:off] -- set virtual breakpoint
	| nada
lb [addr] -- set linear breakpoint
	| nada
pb,b [addr] -- set physical breakpoint
	| nada
info break -- display breakpoints
	|Num Type           Disp Enb Address
	|  1 vbreakpoint    keep y   0x0010:0x00000222
	|  3 lbreakpoint    keep y   0x00000444
	|  2 pbreakpoint    keep y   0x00000111
d [n] -- delete breakpoint
	| nada
x /nuf [addr] -- display linear memory contents
	n = number of units
	u = unit size: b,h,w,g
	f = unit format: x,d,u,o,t
	|[bochs]:
	|0x100 <bogus+0>:        0x00    0x00    0x00    0x00    0x00    0x00    0x00   0x00
	|0x108 <bogus+8>:        0x00    0x00    0x00    0x00    0x00    0x00    0x00   0x00
xp /nuf [addr] -- display physical memory contents
	| same as 'x'
watch read [addr] -- set read watchpoint
	| ?
watch write [addr] -- set write watchpoint
	| ?
watch -- display all watchpoints
	| ?
unwatch -- remove all watchpoints
	| ?
unwatch read [addr] --
	| ?
unwatch write [addr] --
	| ?

---------------- add support for:

s [count] -- multi-step
	| ?
setpmem [addr] [datasize] [val] -- set physical memory
	| ?
crc [addr1] [addr2] -- show crc for memory range
	| ?
info dirty -- show pages dirtied since last use
	| ?
info program -- 
	|        Using the running image of child process -1.
	|Program stopped at 0x0.
	|It stopped at breakpoint 0.
info registers --
	|eax            0x0              0
	|ecx            0x0              0
	|edx            0x300            768
	|ebx            0x0              0
	|esp            0x0              0x0       
	|ebp            0x0              0x0       
	|esi            0x0              0
	|edi            0x0              0
	|eip            0xfff0           0xfff0    
	|eflags         0x2              2
	|cs             0xf000           61440
	|ss             0x0              0
	|ds             0x0              0
	|es             0x0              0
	|fs             0x0              0
	|gs             0x0              0
set $[reg] = [val] --
	| nada
set_cpu -- output format from dump_cpu must be dumped into the read stream
disassemble [start] [end] -- 
	|00000100: 0000: add |MOD0|REG0|RM0| DS:[EAX], AL
	|00000102: 0000: add |MOD0|REG0|RM0| DS:[EAX], AL
set $disassemble_size = [n] -- n is segment size, 16 or 32 (only used by 'disassemble')
set $auto_disassemble = 1 -- call this once to be sure its enabled
	| nada
ptime -- number of ticks since simulation start
	|ptime: 4
sb [delta] -- set timed breakpoint, delta is number of instructions
	| ?
sba [time] -- set timed breakpoint, not sure what format is used for time
	| ?
record [filename] -- record user commands to file
	| ?
playback [filename] -- playback user commands from file
	| ?
watch stop -- stop simulation for watchpoints
	| ?
watch continue -- don't stop simulation for watchpoints, just log them
	| ?
print-stack [n] -- display n words on stack
	|   00000000 [00000000]  0000
	|   00000002 [00000002]  0000
modebp [string] -- ??
	| ?
load-symbols [GLOBAL] [filename] [offset] -- load symbols file
	| ?
show [string] -- ??
	| ?
