Casio PB
Casio PB
Casio PB
The program emulates the HD61700 microprocessor and uses the ROM dump from the
original calculator, therefore it should function almost exactly like the real one.
It works on PC-compatible machines with Microsoft Windows operating system.
The main purpose of creating this program was the verification of the correctness of the
reconstructed processor's internal ROM image, and to have a tool helping by the
analysis of the ROM disassembly.
Files to download
Program version 40, updated 2010/07/31
The screenshots
Usage hints
• Following files contain the memory images, and are loaded when the program is
started:
• rom0.bin - processor's internal 6kB ROM
• rom1.bin - external 32kB ROM
• chr.bin - LCD controller's internal character ROM of size
1.5kB
• ram0.bin - on-board 8kB RAM
ram1.bin - 32kB RAM in the expansion module
• The updated ram0.bin and ram1.bin files are saved when the program is
terminated. If they weren't found, they will be created. In such case the memory
has to be initialised with the New All button.
• The emulator can be operated with the mouse or the keyboard. Special function
keys:
• Cursor keys: corresponding membrane keys
• Ctrl: [F]
• Page Up: SHIFT
• Page Down: CAPS
• Esc: BRK
• Insert: INS
• Delete: DEL
• Backspace: BS
• Enter: EXE
F10: suspends the code execution and opens the
debugger window
To press two keys simultaneously, both the PC keyboard and the mouse must be
used. For example to type the ANGLE keyword either click on the [F] key on
the screen and press the L on the PC keyboard, or hold the Ctrl key on the PC
keyboard and click on the L key on the screen.
Integrated debugger
Disassembly box
• On entry, the starting address matches the Program Counter, but it can be
modified by clicking on the address in the first line. New value must be
confirmed with Enter.
Registers box
• The contents of the registers can be modified by clicking on them. Enter accepts
the changes.
• The top line in the register box shows the state of the upper four bits of the Flag
register. They can be modified as well.
• The contents of the registers can be modified by clicking on them. Enter accepts
the changes.
• Closing the debugger windows resumes the program execution without tracing.
• Pressing the button [Run] in the Single step group box executes a single
machine code instruction without servicing of the interrupts.
• To execute a specified number of machine code instructions type the required
value to the field in the Number of steps group box, then press the associated
[Run] button.
• The Breakpoint group box allows to specify condition that determine when the
program execution should be interrupted. Currently it only compares the
Breakpoint Address typed in the field with the Program Counter. When they
match, the program execution is stopped and the debugger window reappears.
OscFreq=910
This setting specifies the emulated CPU clock frequency in kHz.
OptionCode=255
This setting specifies the Option Code of the interface unit. The value should be
either 255 (for stand-alone operation without any peripheral devices) or 85 (to
be used with the MD-100 Floppy Disk Drive emulator).
Address=127.0.0.1
This setting specifies the IP address of the FDD server host, usually of the local
computer.
Port=7420
This setting specifies the port on the FDD server that the emulated calculator
will connect to.
Uninstalling
To uninstall the emulator, simply delete the directory where it was installed. The
program doesn't modify anything outside its installation directory.
Acknowledgments
• The program includes a freeware component ThreadedTimer developed by
Carlos Barbosa.
Conversion utilities
pb1000et.zip - file size: 26kB, sources and executables, DOS and Windows (in a DOS
window)
RAMTRANS
This utility transfers files between the PC and the ramdisk area of the RAM image used
by the emulator.
• The program needs to be placed in the same directory as the RAM image files
ram0.bin and ram1.bin
• The ramdisk filenames are eight characters long plus three characters for a file
extension. They are case sensitive and can contain characters not allowed on the
PC.
Command overview
Options overview
-i
Ignore the case of ramdisk file(s).
-l
Make all files lowercase.
-u
Make all files uppercase.
It is convenient to select this option when transferring files to the ramdisk.
-tX
Select type to X (B, M, S or hex).
The PB-1000 files have an additional attribute (the file type) which is used for
correct handling of a file selected from the menu:
-b
Force binary transfer.
This option should be selected when transferring tokenized BASIC programs
and binary files.
Note: the ramtrans utility doesn't preserve the information about the destination
address and the start address of machine code programs. Such task requires
appropriate file formats (for example PBF) along with corresponding loaders
(for example PBFTOBIN provided with the HD61 assembler).
-a
Force ASCII transfer.
This option should be selected to transfer PC text files, because it ensures
correct line termination (CR+LF) and file termination (Ctrl-Z). It's also suitable
for machine code programs in PBF format.
-n
No updates are written to the RAM image, useful for testing.
Acknowledgments
• The program is an adaptation of the md100 utility written by Marcus von Cube,
which performs similar operations, but on an MD-100 floppy disk or an image
thereof.