initial commit

This commit is contained in:
Greg Gauthier 2023-07-14 18:42:14 +01:00
commit d1a019e48b
73 changed files with 235 additions and 0 deletions

BIN
floppy/FORTH/Disk1.img Normal file

Binary file not shown.

BIN
floppy/FORTH/Disk2.img Normal file

Binary file not shown.

BIN
floppy/FORTH/Disk3.img Normal file

Binary file not shown.

BIN
floppy/MSDOS5/MSD5-INS1.img Normal file

Binary file not shown.

BIN
floppy/MSDOS5/MSD5-INS2.img Normal file

Binary file not shown.

BIN
floppy/MSDOS5/MSD5-INS3.img Normal file

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

30
floppy/readme.md Normal file
View File

@ -0,0 +1,30 @@
### Floppy Directory
Put floppy images in this directory. Valid image formats are flat sector images
of the type created by WinImage, dd or other such utilities, typically with \*.img
or \*.ima extensions. Compressed \*.imz images are not supported.
MartyPC will adjust the floppy drive size within the capabilities of the currently
emulated machine, based on the size of the image loaded. Thus if you load a 720KB
floppy image, the drive becomes a 720KB floppy drive. There is no need to configure
this setting.
However, if emulating a IBM PC or XT, note that certain floppy sizes will not work
as the machine/BIOS does not know how to handle a disk of that size.
Floppy images must be one of these exact file sizes:
|bytes|type| |
|----|----|-------|
|163,840 | 160KB floppy, single-sided | Rare, only used by the earliest PCs.|
|184,320 | 180KB floppy, single-sided | Rare, only used by the earliest PCs.|
|327,680 | 320KB floppy, double-sided | Somewhat rare. |
|368,640 | 360KB floppy, double-sided | Extremely common. |
|737,280 | 720KB floppy, double-sided | Extremely common. |
|1,228,800 | 1.2MB floppy, double-sided | Extremely common. |
The exception is anything smaller than 163,840 bytes will be loaded as that size,
padded with 0s.
This is a convenience feature for development of boot sector software or loading
of boot sector demos and games.

BIN
floppy/turboc/disk01.img Normal file

Binary file not shown.

BIN
floppy/turboc/disk02.img Normal file

Binary file not shown.

BIN
floppy/turboc/disk03.img Normal file

Binary file not shown.

BIN
hdd/cmsdos5.vhd Normal file

Binary file not shown.

BIN
hdd/dmsdos5.vhd Normal file

Binary file not shown.

BIN
hdd/emsdos5.vhd Normal file

Binary file not shown.

BIN
icon.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.6 KiB

194
martypc.toml Normal file
View File

@ -0,0 +1,194 @@
# martypc.toml
# Version 0.1.3
# Configuration file for the MartyPC emulator.
[emulator]
# ----------------------------------------------------------------------------
# General emulator options
# ----------------------------------------------------------------------------
# Base emulator data folder.
basedir = "/opt/martypc/"
# Power on the emulated machine on startup (only applicable in gui mode)
auto_poweron = true
# Run the emulator without gui
headless = false
# Run the instruction fuzzer (requires validator feature)
fuzzer = false
# Do aspect correction to convert display buffer to 4:3. May introduce some
# resampling blur. This can be toggled on/off in options menu.
correct_aspect = true
# Debug mode does a few miscellaneous things.
# - CPU Autostart is disabled
# - Several debug panels are opened automatically
# - CPU Instruction history is turned on (overrides setting)
debug_mode = false
# Warn if MartyPC was compiled in debug mode. Disable this if you intended to
# do so and don't want the nag. Unfortunately, 'cargo build' makes a debug
# build by default...
debug_warn = true
# Don't load BIOS if true (not useful on its own)
no_bios = false
# Run the specified program instead of booting BIOS. The CPU reset vector will
# be set to 'run_bin_seg:run_bin_ofs'
#run_bin = "./program/a_effect.bin"
#run_bin_seg = 0x1000
#run_bin_ofs = 0x0000
# ----------------------------------------------------------------------------
# Debug Tracing Options
# ----------------------------------------------------------------------------
# CPU tracing may be enabled by specifying trace_mode
# Tracing does not begin unless trace_on == true or set in GUI
#
# Valid values for trace_mode:
# "Instruction" -> Perform per-instruction traces (slow, big)
# "Cycle" -> Perform per-cycle traces (slowest, biggest)
# >>> WARNING: This will quickly make multi-gigabyte files.
#
# Additionally, a valid value for trace_file must be supplied.
#
trace_on = false
trace_mode = "Cycle"
#trace_file = "./traces/instr_trace.log"
# Enable Video tracing. Video device may log memory and register read/writes.
#video_trace_file = "./traces/video_trace.log"
# Enable Video frame debugging. This will display the entire video field
# including overscan and blanking periods for cards that support Direct
# rendering (CGA only for now)
video_frame_debug = false
# Enable PIT output save to file. All samples from PIT will be saved to disk.
# >>> WARNING: This will quickly make multi-gigabyte files.
#pit_output_file = "./traces/pit_output.pcm"
# Use emulator service interrupt to trigger PIT output writing
#pit_output_int_trigger = true
[gui]
# ----------------------------------------------------------------------------
# GUI options
# ----------------------------------------------------------------------------
# Disable the GUI entirely. Use autostart=true or you'll have no way to start
# the machine.
gui_disabled = false
# Specify the base color for GUI control theme. Ideally use something dark and
# desaturated. Comment out for default EGUI theme.
#theme_color = 0x382D59 # Marty purple
theme_color = 0x2D4859 # Alt blue
[cpu]
# ----------------------------------------------------------------------------
# Various CPU related options.
# ----------------------------------------------------------------------------
# Enable CPU wait states. This includes wait states from DMA, memory access
# and device IO. Setting this to false may speed up the CPU, but reduce
# accuracy (Area 5150 will break)
wait_states_enabled = true
# Attempt to detect when the CPU is executing invalid instructions and halt.
# May need to disable for certain test programs like acid88
off_rails_detection = false
# Whether to enable instruction history by default. This slows down the
# emulator a modest amount when enabled.
instruction_history = false
[input]
# ----------------------------------------------------------------------------
# Some platforms reverse the left and right mouse button id #'s.
# We try to detect this, but it can be overridden here.
reverse_mouse_buttons = false
[machine]
# Machine info
# ----------------------------------------------------------------------------
# Emulated machine model type.
# ----------------------------------------------------------------------------
# Valid options for model are:
# "IBM_PC_5150"
# "IBM_XT_5160"
#model = "IBM_PC_5150"
model = "IBM_XT_5160"
# ROM Override
# ----------------------------------------------------------------------------
# Specify a specific BIOS to load. This overrides MartyPC's ROM autodetection.
# This feature is intended for advanced users. The address will depend on the
# ROM loaded. Please indicate if you are using this feature if you need to
# report issues.
# Values for 'org' include
# Normal,
# Reversed,
# InterleavedEven,
# InterleavedOdd
#rom_override = [
# { path = "./roms/BIOS_5160_09MAY86_U19_62X0819_68X4370_27256_F000.BIN", address = 0xF0000, offset=0, org="Normal" },
# { path = "./roms/BIOS_5160_09MAY86_U18_59X7268_62X0890_27256_F800.BIN", address = 0xF8000, offset=0, org="Normal" }
#]
# Used by web player. Do not modify.
raw_rom = false
# Turbo Button
# ----------------------------------------------------------------------------
# Change the clock divisor/multiplier for the CPU to run the CPU faster than
# normal. Other devices like the timer will continue to run at the same rate.
#
# On IBM PC/XT, turbo increases CPU clock from 4.77Mhz to 7.16Mhz.
turbo = true
# Video card type.
# ----------------------------------------------------------------------------
# Valid options for video are:
# "CGA"
video = "CGA"
# Emulate a composite monitor? Only meaningful for CGA.
composite = false
# Hard Disk Controller Type
# ----------------------------------------------------------------------------
# Valid options for hard disk controller are:
# "None" - No hard disk controller will be present
# "Xebec" - Emulates the IBM/Xebec 20MB Fixed Disk Controller
#hdc = "None"
hdc = "Xebec"
#will assign letter in sequence with number
#0=c, 1=d, 2=e, and so forth...
drive0 = "cmsdos5.vhd"
drive1 = "dmsdos5.vhd"
# as of 0.13.1 - only supports 2 hd's
#drive2 = "emsdos5.vhd"
# Options for the CPU Validator module.
# ----------------------------------------------------------------------------
# You must have an Arduino8088 connected via USB to utilize
# the validator. For more information, see
# https://github.com/dbalsom/arduino_8088
[validator]
type = "Arduino8088"
trigger_address = 0xFFFF0
trace_file = "./traces/validator_trace.log"

BIN
roms/62-000128-000.bin Normal file

Binary file not shown.

BIN
roms/62-000193-036.BIN Normal file

Binary file not shown.

BIN
roms/62-000194-036.BIN Normal file

Binary file not shown.

BIN
roms/62-000279-061.bin Normal file

Binary file not shown.

BIN
roms/90x8969.bin Normal file

Binary file not shown.

BIN
roms/90x8970.bin Normal file

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

After

Width:  |  Height:  |  Size: 275 KiB

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

BIN
roms/SIDE1V12.BIN Normal file

Binary file not shown.

BIN
roms/dtc_cxd21a.bin Normal file

Binary file not shown.

BIN
roms/ibm-basic-1.10.rom Normal file

Binary file not shown.

BIN
roms/ibm-vga.rom Normal file

Binary file not shown.

BIN
roms/ibm-xt-1982-11-08.rom Normal file

Binary file not shown.

BIN
roms/ibm-xt-1986-05-09.rom Normal file

Binary file not shown.

Binary file not shown.

BIN
roms/ide_386.bin Normal file

Binary file not shown.

BIN
roms/ide_at.bin Normal file

Binary file not shown.

BIN
roms/ide_at_1_1_5.bin Normal file

Binary file not shown.

BIN
roms/ide_xt.bin Normal file

Binary file not shown.

BIN
roms/ide_xt_1_1_5.bin Normal file

Binary file not shown.

BIN
roms/ide_xtp.bin Normal file

Binary file not shown.

BIN
roms/idexywd2.bin Normal file

Binary file not shown.

BIN
roms/infowdbios.rom Normal file

Binary file not shown.

BIN
roms/juko-d16x-bios-1.2.bin Normal file

Binary file not shown.

11
roms/readme.md Normal file
View File

@ -0,0 +1,11 @@
### Rom Directory
Place your ROMs in this directory. Subdirectories will not be searched.
The name of the roms is not important - MartyPC will find ROMs it knows about by their md5 hash.
Most common sources of IBM BIOS images for the IBM PC 5150 or IBM XT 5160 should work, including basic ROMs.
If multiple valid sets of ROMs are detected, MartyPC will use the newest set by release date.
Please see the MartyPC Wiki for more information on using ROMs with MartyPC.
https://github.com/dbalsom/martypc/wiki/ROMs

BIN
roms/st11_bios_vers_1.7.bin Normal file

Binary file not shown.

BIN
roms/st11_bios_vers_2.0.bin Normal file

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

0
screenshots/dummy Normal file
View File