# ibm5160.toml
# Machine Configurations for the IBM 5160

# MartyPC will search all *.toml files in 'machine' directories for machine
# configurations, so if you create a custom machine configuration, you can 
# put it in a separate file.
#
# ----------------------------------------------------------------------------
# Defining a Machine Configuration  
# Valid Machine types:
#  "Ibm5150v64K"
#  "Ibm5150v256K"
#  "Ibm5160"
#
# Valid Floppy Disk Controller types:
#  "IbmNec"
#
# Valid floppy Drive Types:
#  "360k"
#  "720k"
#  "1.2m"
#  "1.44m"

# Valid Hard Disk Controller Types:
#  "IbmXebec"
#
# Valid Serial Controller Types:
#  "IbmAsync"
#
# Conventional memory amount may be different from value specified due to MMIO
# optimizations. I recommend specifying a value in 0x10000 increments.
# ----------------------------------------------------------------------------

[[machine]]
name = "ibm5160"
type = "Ibm5160"
rom_set = "auto"
speaker = true
overlays = [
    "pcxt_2_720k_floppies",
    "pcxt_2_serial_ports",
    "us_modelf_keyboard",
    "microsoft_serial_mouse",
    "game_port",
]

    [machine.memory]
    conventional.size = 0xA0000
    conventional.wait_states = 0

    # Video cards
    [[machine.video]]
    bus_type = "ISA"
    type = "CGA"
    clock_mode = "Dynamic"

[[machine]]
name = "ibm5160_diags"
type = "Ibm5160"
rom_set = "supersoft_diags"
speaker = true
overlays = [
    "pcxt_2_720k_floppies",
    "pcxt_2_serial_ports",
    "us_modelf_keyboard",
    "microsoft_serial_mouse",
    "game_port",
]

    [machine.memory]
    conventional.size = 0xA0000
    conventional.wait_states = 0

    # Video cards
    [[machine.video]]
    bus_type = "ISA"
    type = "CGA"
    clock_mode = "Dynamic"

[[machine]]
name = "ibm5160_hdd"
type = "Ibm5160"
rom_set = "auto"
speaker = true
overlays = [
    "pcxt_2_720k_floppies",
    "pcxt_2_serial_ports",   
    "us_modelf_keyboard",
    "microsoft_serial_mouse",
    "game_port",
]

    [machine.memory]
    conventional.size = 0xA0000
    conventional.wait_states = 0

    # Hard disk controller
    [machine.hdc]
    bus_type = "ISA"
    type = "IbmXebec"
    
        # Drives connected to controller. Maximum of 2.
        # Drive #0 - (Typically C:)
        [[machine.hdc.drive]]
        format = "Mfm"
        vhd = "xebec20MB.vhd"
        
        # Drive #1 - (Typically D:)
        #[[machine.hdc.drive]]
        #vhd = "games.vhd"
    
    # Video cards
    [[machine.video]]
    type = "CGA"
    clock_mode = "Dynamic"

[[machine]]
name = "ibm5160_hdd_ega"
type = "Ibm5160"
rom_set = "auto"
speaker = true
overlays = [
    "pcxt_2_720k_floppies",
    "pcxt_2_serial_ports", 
    "us_modelf_keyboard",
    "microsoft_serial_mouse",
    "game_port",
]
    
    [machine.memory]
    conventional.size = 0xA0000
    conventional.wait_states = 0

    # Hard disk controller
    [machine.hdc]
    bus_type = "ISA"
    type = "IbmXebec"
    
        # Drives connected to controller. Maximum of 2.
        # Drive #0 - (Typically C:)
        [[machine.hdc.drive]]
        format = "Mfm"
        vhd = "xebec20MB.vhd"
        
        # Drive #1 - (Typically D:)
        #[[machine.hdc.drive]]
        #vhd = "games.vhd"
    
    # Video cards
    [[machine.video]]
    bus_type = "ISA"
    type = "EGA"
    clock_mode = "Dynamic"



