home
|
describes the project scope and background
|
|
release
|
the current release and a set of useful hdos material available for free download
|
|
current release
|
|
hdos utilities
|
|
support
|
contact information, host requirements, product release notes and an overview of emulator limitations
|
|
contacting the author
|
|
macintosh host system requirements
|
|
emulator limitations
|
|
release notes
|
|
design
|
emulator design details
|
|
|
|
system architecture
|
an overview of the system architecture describing the three major control flows through the software modules
|
|
|
instruction flow
|
|
|
time distribution
|
|
|
macintosh events
|
|
|
|
performance
|
describes
the variables that affect performance, the measurement of performance,
and analyzes the results of a number of benchmark tests
|
|
|
performance variables
|
|
|
methodology
|
|
|
results
|
|
|
|
time
|
defines
'time' in the context of the emulator and describes how timing
information is generated and distributed through the emulator
|
|
|
defining time
|
|
|
time creation
|
|
|
processor pacing
|
|
|
time distribution
|
|
|
|
h8 processing
|
describes
how the 8080a "chip" is "glued" into the emulator architecture: how
memory is initialized, how interrupts are scheduled, and how processor
speed is managed
|
|
|
processor initialization
|
|
|
interrupt dispatch
|
|
|
|
8080a emulation
|
describes
the internal operation of the generic 8080a module, and details a few
of the more interesting topics: instruction dispatch, i/o interfacing,
memory write protection, registers and flags
|
|
|
instruction dispatch
|
|
|
in/out handling
|
|
|
memory write protection
|
|
|
register design
|
|
|
flag handling
|
|
|
|
i/o package
|
describes
emulator i/o interfacing, both generically and with pam/8 specifics,
and details how the 8250 and 8251 chips are emulated
|
|
|
ports
|
|
|
8250 emulation
|
|
|
8251 emulation
|
|
|
pam/8 port handling
|
|
|
|
pam/8 gui
|
describes
the three main areas of the gui: keypad and keyboard event handling,
front-panel led drawing, and sound feedback generation
|
|
|
keypad events
|
|
|
led drawing
|
|
|
sound
|
|
|
|
h-17 disk system
|
describes
both the physical and emulated h-17 disk systems in detail, with an
emphasis on the procedural aspects of the low-level disk driver's use
of the h-17 i/o ports to access the disk system
|
|
|
h-17 physical disk format
|
|
|
disk label format
|
|
|
directory format
|
|
|
date format
|
|
|
i/o port operation
|
|
|
emulator internal disk structure
|
|
|
uninitialized disk handling
|
|
|
h-17 driver notes
|
|
|
preferences
|
|
|
|
h-19 terminal
|
discusses
the emulator's implementation of the h-19 terminal in detail, with an
emphasis on keyboard mapping, key translation, and output escape
sequence processing
|
|
|
h-19 overview
|
|
|
keyboard mapping
|
|
|
h-19 graphics character generation
|
|
|
character pacing
|
|
|
output character processing
|
|
|
cursor display
|
|
|
|
serial i/o
|
describes
three of the four serial applications: access to the macintosh printer,
file transfer to/from the macintosh, and access to the macintosh modem
|
|
|
print page layout
|
|
|
print handler design
|
|
|
file transfer design
|
|
|
modem design
|
|
|
|
tape i/o
|
describes the implementation and operation of pam/8 "cassette tape" load and dump
|
|
|
tape file format
|
|
|
tape implementation
|
|
|
operating instructions
|
|
resources
|
provides
links to additional technical resources, other heathkit and h8 related
sites, and names the individuals who contributed greatly to the
successful implementation of the emulator
|
|
technical reference material
|
|
other heathkit links
|
|
credits and contributions
|
|
legal
|
details my copyrights and the copyrights of other project contributors
|
|
web site and emulator copyright
|
|
pie text editor notices
|
|
hug sy: driver notices
|
|
heathkit software copyright status
|
|