Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
21 commits
Select commit Hold shift + click to select a range
3dc513c
heathzenith/h8.cpp: Implement H8 Bus
mgarlanger Apr 5, 2025
3eefc54
Merge remote-tracking branch 'origin/master' into h8_bus
mgarlanger Apr 5, 2025
83cd180
Fix validate errors, and some minor cleanup
mgarlanger Apr 5, 2025
65d4759
Move CPU and FP functionality into cards and some cleanup
mgarlanger Apr 19, 2025
300989e
Add jumper definitions for 8080A CPU board based on schematics
mgarlanger Apr 20, 2025
cb19ce9
Minor update to trigger rebuild with fixed master.
mgarlanger Apr 20, 2025
fecb08c
Address review comments
mgarlanger Apr 26, 2025
12fa67c
Fix compiler error
mgarlanger Apr 26, 2025
06d2122
Add handling of WH_8_64 switches, make amount of memory on cards conf…
mgarlanger Apr 26, 2025
93b7c9f
Update bus handling to properly handle multiple cards driving same si…
mgarlanger Apr 27, 2025
3f588de
Disable logging on WH-8-64
mgarlanger Apr 28, 2025
ba2b227
fix interrupt handling on h8bus and minor cleanup
mgarlanger Apr 29, 2025
d6e3ab4
fix/simplify single instruction interrupt mode
mgarlanger May 1, 2025
79da6b9
Simplify RAM handling in H-8-1
mgarlanger May 3, 2025
1a35e0e
Combine int 1 and int 2 signals on CPU board from p201 and the bus
mgarlanger May 10, 2025
24302a8
use srcclean on files
mgarlanger May 10, 2025
0eb2d75
remove unneeded includes
mgarlanger Aug 5, 2025
1f9550f
Use memory_access::specific to avoid repeated lookups, and other mino…
mgarlanger Aug 11, 2025
0d254ac
Move p201 cable handling out of h8bus class, and other minor cleanup
mgarlanger Aug 12, 2025
f9d5faa
fix: address crash when changing p1/p2 cards, other minor cleanup
mgarlanger Aug 14, 2025
2a5d761
Move memory_access::specific to user, remove unneeded device_type, an…
mgarlanger Aug 21, 2025
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
32 changes: 32 additions & 0 deletions scripts/src/bus.lua
Original file line number Diff line number Diff line change
Expand Up @@ -5816,6 +5816,38 @@ if (BUSES["H89BUS"]~=null) then
}
end

---------------------------------------------------
--
--@src/devices/bus/heathzenith/h8/h8bus.h,BUSES["H8BUS"] = true
---------------------------------------------------

if (BUSES["H8BUS"]~=null) then
files {
MAME_DIR .. "src/devices/bus/heathzenith/h8/cards.cpp",
MAME_DIR .. "src/devices/bus/heathzenith/h8/cards.h",
MAME_DIR .. "src/devices/bus/heathzenith/h8/cpu8080.cpp",
MAME_DIR .. "src/devices/bus/heathzenith/h8/cpu8080.h",
MAME_DIR .. "src/devices/bus/heathzenith/h8/front_panel.cpp",
MAME_DIR .. "src/devices/bus/heathzenith/h8/front_panel.h",
MAME_DIR .. "src/devices/bus/heathzenith/h8/h8bus.cpp",
MAME_DIR .. "src/devices/bus/heathzenith/h8/h8bus.h",
MAME_DIR .. "src/devices/bus/heathzenith/h8/h_8_1.cpp",
MAME_DIR .. "src/devices/bus/heathzenith/h8/h_8_1.h",
MAME_DIR .. "src/devices/bus/heathzenith/h8/h_8_5.cpp",
MAME_DIR .. "src/devices/bus/heathzenith/h8/h_8_5.h",
MAME_DIR .. "src/devices/bus/heathzenith/h8/wh_8_64.cpp",
MAME_DIR .. "src/devices/bus/heathzenith/h8/wh_8_64.h",
}

dependency {
{ MAME_DIR .. "src/devices/bus/heathzenith/h8/front_panel.cpp", GEN_DIR .. "emu/layout/h8_fp.lh" },
}

custombuildtask {
layoutbuildtask("emu/layout", "h8_fp"),
}
end

---------------------------------------------------
--
--@src/devices/bus/heathzenith/intr_cntrl/intr_cntrl.h,BUSES["HEATH_INTR_SOCKET"] = true
Expand Down
43 changes: 43 additions & 0 deletions src/devices/bus/heathzenith/h8/cards.cpp
Original file line number Diff line number Diff line change
@@ -0,0 +1,43 @@
// license:BSD-3-Clause
// copyright-holders:Mark Garlanger
/***************************************************************************

Cards for the H8 Benton Harbor Bus

***************************************************************************/

#include "emu.h"
#include "cards.h"

#include "cpu8080.h"
#include "front_panel.h"
#include "h8bus.h"
#include "h_8_1.h"
#include "h_8_5.h"
#include "wh_8_64.h"

// P1 is reserved for the Front Panel
void h8_p1_cards(device_slot_interface &device)
{
device.option_add("fp", H8BUS_FRONT_PANEL);
}

// P2 is reserved for the CPU board.
void h8_p2_cards(device_slot_interface &device)
{
device.option_add("cpu8080", H8BUS_CPU_8080);
}

// P10 is reserved for the HA-8-8 Extended Configuration Option card, which is
// required to run CP/M with the 8080 CPU board.
// TODO - add the HA-8-8
void h8_p10_cards(device_slot_interface &device)
{
}

void h8_cards(device_slot_interface &device)
{
device.option_add("h_8_1", H8BUS_H_8_1);
device.option_add("h_8_5", H8BUS_H_8_5);
device.option_add("wh_8_64", H8BUS_WH_8_64);
}
19 changes: 19 additions & 0 deletions src/devices/bus/heathzenith/h8/cards.h
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
// license:BSD-3-Clause
// copyright-holders:Mark Garlanger
/***************************************************************************

Cards for the Heath H8 Benton Harbor Bus

***************************************************************************/

#ifndef MAME_BUS_HEATHZENITH_H8_CARDS_H
#define MAME_BUS_HEATHZENITH_H8_CARDS_H

#pragma once

void h8_p1_cards(device_slot_interface &device) ATTR_COLD;
void h8_p2_cards(device_slot_interface &device) ATTR_COLD;
void h8_p10_cards(device_slot_interface &device) ATTR_COLD;
void h8_cards(device_slot_interface &device) ATTR_COLD;

#endif // MAME_BUS_HEATHZENITH_H8_CARDS_H
Loading
Loading