[sebhc] Emulator fixes / additions

Dave Dunfield dave04a at dunfield.com
Thu May 27 05:34:17 CDT 2004

At 23:52 26/05/2004 +0000, you wrote:
>Before I forget, Dwight found a pristine HDOS 1.0 image .. I put it in the 
>disk-images.  He also sent me 2 bootable images with basic games .. they are 
>chase.h8d and bgames.h8d under "other".

Cool - have you tried booting it in the emulator?

>>OK - I have implemented this - a HLT with interrupt disabled just freezes
>I assume you mean "enabled".  It does seem to work now.

Yeah - typo - see my previous post about why this is not a great feature!

>>- I've made the H17 optional. Basically, the H17 ROM and I/O ports ...
>...and the H17 write-protectable RAM?

The write protected RAM defaults to "writeable" at startup (why protect it,
it contains 0's on the emulator, or garbage on the H8) - it will not be
write protected until the write protect bit is written to the control port
- since the control port does not appear in the map until the H17 is
  "installed", the RAM is writeable if the H17 is not installed.

>>   At some point I'll create a custom library for my Micro-C/PC compiler 
>>   will let you write virtual I/O devices in 'C'.
>How cool!  And will it also have access to the H8 memory (DMA)?  Doesn't 
>need to get invoked on access, but just read/write it when it DOES run.

There's a lot more interesting values available via the ES:BX handler data
pointer than I have currently documented, One of which is the segment address
of the virtual 8080 64K address space - I am going to rearrange the area to
put the more useful (to IO handlers) values first, then I will document them,
allowing access to 8080 Memory as well as certain other siulator internals.

>>   we could easily turn them OFF, and allow all of memory to be RAM -
>>   currently no I/O port for doing this, but it could be easily added.
>Wow, you are really close to having the XCON configuration implemented.
>>   [Unfortuntely, you can't do this when starting the simulator because 
>>    dies if all memory is RAM - its "find end of memory" test wraps to 0000
>>    and it continues forever]
>Even with XCON, on reset you need to switch the rom(s) back on.  After the 
>I/O port, the only other thing you'd need for XCON is a way to set the boot 
>control switch positions that it reads (cmd line parms?).  I attached a 
>mtr.acm excerpt to the end of this mail with the port and bit definitions.

>**      I/O Ports
>IP.CON  EQU     362Q            H-88/H-89/HA-8-8 Configuration
>OP2.CTL EQU     362Q            H-88/H-89/HA-8-8 Control Port
>**      Front Panel Control Bits
>*       CB2.* set in OP2.CTL
>CB2.SSI EQU     00000001B       Single Step Interrupt
>CB2.CLI EQU     00000010B       Clock Interrupt Enable
>CB2.ORG EQU     00100000B       ORG 0 Select
>CB2.SID EQU     01000000B       Side 1 Select

How do the "Single Step" and "Clock Enable" bits work in conjunction
with the existing H8 bits of the same function in port $F0 (360)?

>**      Configuration Flags
>*       These bits are read in IP.CON
>CN.174M EQU     00000011B       Port 174Q Device-Type Mask
>CN.170M EQU     00001100B       Port 170Q Device-Type Mask

What do these mean?

>CN.PRI  EQU     00010000B       Primary/Secondary:  1=>primary == 170Q
>CN.MEM  EQU     00100000B       Memory Test/Normal Switch:  0=>Test;
>CN.BAU  EQU     01000000B       Baud Rate:  0=>9600; 1=>19,200

How is the baud rate set in hardware - on the H5, you can't select beween
9600 and 19200 in software, choices are x16 or x64, normally 9600 & 2400.

>CN.ABO  EQU     10000000B       Auto-Boot:  1=>Auto-Boot
>CND.H17 EQU     00B             H-17 Disk,            Valid only in CN.174M
>CND.NDI EQU     00B             No Device Installed,  Valid only in CN.170M
>CND.H47 EQU     01B             H-47 Disk

Is there a "ORG 0" option which works with PAM-8?

dave04a (at)    Dave Dunfield
dunfield (dot)  Firmware development services & tools: www.dunfield.com
com             Vintage computing equipment collector.

Delivered by the SEBHC Mailing List

More information about the Sebhc mailing list