-
Notifications
You must be signed in to change notification settings - Fork 1.9k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
heathkit & zenith: Merge Heath and Zenith, since same company #12362
Conversation
src/mame/heathzenith/h19.cpp
Outdated
ROM_START( z19 ) | ||
ROM_END | ||
|
||
} // anonymous namespace | ||
|
||
// year name parent compat machine input class init company fullname flags | ||
COMP( 1979, h19, 0, 0, h19, 0, h19_state, empty_init, "Heath Company", "Heathkit H-19", MACHINE_SUPPORTS_SAVE ) | ||
// year name parent compat machine input class init company fullname flags | ||
COMP( 1979, h19, 0, 0, h19, 0, h19_state, empty_init, "Heath Company", "H-19 Terminal", MACHINE_SUPPORTS_SAVE ) | ||
COMP( 1980, z19, h19, 0, h19, 0, h19_state, empty_init, "Zenith Data Systems", "Z-19 Terminal", MACHINE_SUPPORTS_SAVE ) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I don’t think duplicated machines are really useful if there are no differences at all.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@rb6502 had mentioned there would be value in documenting the systems like this, but I will remove them for now so this PR can be merged (it would be trivial to add back in a later PR).
As for the copy/paste of the rom definitions, I was thinking doing something like this would be better:
static const auto rom_z89 = rom_h89;
or have a macro in romentry.h
like
#define ROM_DUP(new_sys, existing_system) static const auto rom##new_sys rom##existing_system;
So if anything changes in the rom code, it obvious that this macro needs updating.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@rb6502 what do you think about having things like h19/z19 and h89/z89 declared even if the branding is the only difference between the systems? And a define like I mentioned above could address the copy/pasted ROM definitions Vas mentioned in the other comment.
src/mame/heathzenith/h89.cpp
Outdated
COMP( 1979, h88, h89, 0, h88, h88, h88_state, empty_init, "Heath Company", "Heathkit H88", MACHINE_SUPPORTS_SAVE) | ||
COMP( 1979, h89, 0, 0, h89, h89, h89_state, empty_init, "Heath Company", "Heathkit H89", MACHINE_SUPPORTS_SAVE) | ||
COMP( 1984, h89_sigmasoft, h89, 0, h89_sigmasoft, h89, h89_sigmasoft_state, empty_init, "Heath Company", "Heathkit H89 with SigmaSoft IGC", MACHINE_SUPPORTS_SAVE) | ||
// year name parent compat machine input class init company fullname flags | ||
COMP( 1979, h88, h89, 0, h88, h88, h88_state, empty_init, "Heath Company", "H-88", MACHINE_SUPPORTS_SAVE) | ||
COMP( 1979, h89, 0, 0, h89, h89, h89_state, empty_init, "Heath Company", "H-89", MACHINE_SUPPORTS_SAVE) | ||
COMP( 1980, z89, h89, 0, h89, h89, h89_state, empty_init, "Zenith Data Systems", "Z-89", MACHINE_SUPPORTS_SAVE) | ||
COMP( 1981, z90, h89, 0, h89, h89, h89_state, empty_init, "Zenith Data Systems", "Z-90", MACHINE_SUPPORTS_SAVE) | ||
COMP( 1984, h89_sigmasoft, h89, 0, h89_sigmasoft, h89, h89_sigmasoft_state, empty_init, "Heath Company", "H-89 with SigmaSoft IGC", MACHINE_SUPPORTS_SAVE) | ||
COMP( 1984, z90_sigmasoft, h89, 0, h89_sigmasoft, h89, h89_sigmasoft_state, empty_init, "Zenith Data Systems", "Z-90 with SigmaSoft IGC", MACHINE_SUPPORTS_SAVE) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Same with this – it adds clutter to the supported system list and so on, and requires dual-maintenance of the copy/pasted ROM definitions.
@@ -0,0 +1,53 @@ | |||
# Heath Company / Zenith Data Systems |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I don't know that we've done anything like this before. I'm not totally against it, but my initial feeling is that this is more like something that would either be in source comments or the wiki: https://wiki.mamedev.org/index.php/System-Specific_Setup_and_Information
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
It doesn’t belong here. It’s a combination of trivia that belongs on Wikipedia, usage information that belongs on the MAMEdev wiki, and notes that belong in source files.
src/mame/heathzenith/h89.cpp
Outdated
ROM_SYSTEM_BIOS(4, "mtrhex_4k", "Ultimeth 4k ROM") | ||
ROMX_LOAD("2732_mtrhex_4k.u518", 0x0000, 0x1000, CRC(e26b29a9) SHA1(ba13d6c9deef682a9a8262bc910d46b577929a13), ROM_BIOS(4)) | ||
|
||
ROM_SYSTEM_BIOS(5, "mtr90-84", "Heath's MTR-90 (444-84 - Superseded by 444-142)") |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Was this actually called "Heath's MTR-90"? These systems are hard to find info on so I don't actually know, but it seems unlikely even for the 80s :-)
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
My objection is to the "Heath's" part, because I assume it wouldn't be named like grape jelly. If the ROM is just the Heath version of what is otherwise badged as a Zenith Data Systems MTR-90, I'd call that BIOS "MTR-90, Heathkit (444-84 - Superseded by 444-142)".
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The MTR-90 model numbers were actually the same between ZDS and Heath. I had just added the Heath's
part, since the other ROMs had the company's name. Adding the 's
wasn't intentional. I could just use Zenith Data Systems
for the two MTR-90s, and Heath
for the MTR-89 to make it consistent.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Since there are questions on whether or not this PR will get merged, I'll make the description changes in a followup PR.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Ok. Given the 's wasn't intentional, I think this is OK if you fix that. Nobody's answering my question about what to do with the documentation, but worst case we can yank it out of the tree and put it on the wiki later.
Heathkit (Heath Company) and Zenith (ZDS - Zenith Data Systems) were the same company. Heath Company originally developed the systems, but the company was bought out by Zenith in 1979. The Zenith Data Systems division was created and many of their computers were dual branded with both Heath and Zenith/ZDS branding.
Added a few of the duplicate models, including Z-19 terminal and Z-89 and Z-90 computers.