Skip to content
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

Major state refactoring of pc98 based HW #8475

Merged
merged 54 commits into from Aug 24, 2021
Merged

Major state refactoring of pc98 based HW #8475

merged 54 commits into from Aug 24, 2021

Conversation

angelosa
Copy link
Member

@angelosa angelosa commented Aug 20, 2021

This is a first major step in splitting up machine classes in NEC PC98 family tree.

Highlights:

  • Splits up derivative HWs into own state machine and files (pc98ha.cpp, pc9821.cpp and pc9801_epson.cpp);
  • Adds a preliminary uPD4991a parallel RTC, used by pc98ha;
  • Fix -26, -86, -118 C-bus sound board dips or jumper settings;
  • Fix default sound card for pc9821 (-86) and pc9821ce2 / pc9821cx3 (-118);
  • Adds preliminary MAD Factory Otomichan-kai C-bus sound board;
  • Adds boilerplate code for C-bus installing board I/Os, avoiding the possible inconvenience of board(s) getting silently unmapped by other installed boards;
  • Major refactoring of HW dip switches readouts, using required_ioports instead of scattering things around in PPI hooks;
  • Extensive QA rundown, including research on missing features and undumped machines.

Addresses the following bugs:

  • Don't passthrough mouse irq frequency when cycle setting is setup too, fixes jastrike mouse input on options menu;
  • Fix kanji RAM window LR readback, makes telenetm to properly display 8x16 chars on RS and derivative machines;

New machines marked as NOT_WORKING

PC-98LT [anonymous]
PC-98HA "Handy98" [anonymous]
PC-9821Nr15 (98NOTE Lavie) [flyingharuka]
PC-9821Nr166 (98NOTE Lavie) [flyingharuka]
PC-9821Nw150 (98NOTE Lavie) [flyingharuka]
PC-9821Ra266 (98MATE R) [flyingharuka]
PC-9821Cx3 (98MULTi CanBe) [flyingharuka]
PC-9801VX [qazmko1029]
PC-9801US [CoolMod]


pc8801.cpp: fixed OPNA RAM readback, allowing SWs to playback ADPCMs properly.

----------------------------------
PC-98LT [anonymous]
PC-98HA "Handy98" [anonymous]
----------------------------------
PC-9821Nr15 (98NOTE Lavie) [flyingharuka]
PC-9821Nr166 (98NOTE Lavie) [flyingharuka]
PC-9821Ra266 (98MATE R) [flyingharuka]
PC-9821Cx3 (98MULTi CanBe) [flyingharuka]
…Add some basic shadow IPL mechanism, makes pc386m to be almost bootable except for one error at POST.
…for Valis II), fix OPN/OPNA overdriven sound mixing
----------------------------------
PC-9801VX [qazmko1029]
----------------------------------
PC-9801US [CoolMod]
…nd board;

pc9801.cpp: demote -118 and SpeakBoard C-bus boards to imperfect sound;
pc9801.cpp: make pc9801us and pc9801ux to default to 3'5 floppy drives;
pc98ha.cpp, pc9821.cpp: fix pc98lt, pc98ha and pc9821as system port A direct read-back in place of dips;
pc9801.cpp: extend QA notes;
…"MICOM ERROR";

pc9801.cpp: proper DMA access control default;
--------------------------------
PC-9821Nw150 (98NOTE Lavie) [flyingharuka]
…is setup too, fixes jastrike mouse input on options menu
…rly display 8x16 chars on RS and derivative machines
…pc9821 default sound card to -86 and CanBe to -118;

pc9801.cpp: fix SDIP I/O mappings to 8-bit;
pc9821.cpp: extensive QA notes about pc9821cx3;
…ired_ioports instead of scattering things around in PPI hooks;

pc9801.cpp: initial attempt to hookup 2HD/2DD mixed mode for VM class and later machines;
Copy link
Member

@cuavas cuavas left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Probably a good idea to run srcclean on the affected files to avoid more churn after merging – there are at least a few places with space indenting that will get hit.

src/mame/includes/pc9801.h Outdated Show resolved Hide resolved
src/devices/bus/cbus/pc9801_86.cpp Outdated Show resolved Hide resolved
@angelosa
Copy link
Member Author

Looks like pc9821 "pegc" mode got regressed in 57e4628
Pretty sure I've tested panicbom just before merging to latest:

0150

@angelosa
Copy link
Member Author

I'm done here for the time being.

@angelosa angelosa merged commit 0e4ba6d into master Aug 24, 2021
@angelosa angelosa deleted the pc98_state branch August 24, 2021 08:22
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

2 participants