-
-
Notifications
You must be signed in to change notification settings - Fork 17
Macintosh Portable Support #152
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
base: master
Are you sure you want to change the base?
Conversation
Combined commit for general Macintosh Portable support. Most functionality is implemented but there are still some bugs that need fixing and some optimizations to be done.
|
Thank you so much for this! It would be awesome to add Portable as a model to Snow. Let me know when you feel the PR is ready for review and I'll review it. If there are minor issues left but the system is (mostly) usable, that's fine and it can be iteratively improved. RE the restart thing: one thing you can check if the CPU receives a RESET instruction during restart. You can implement a reset function on the bus and clear the ADB interrupt to a safe state there. Maybe that helps.. |
Unfortunately the Portable specifically does not use the RESET instruction. Apparently there was some sort of issue and the RESET instruction was not to be used, not sure what problem they were worried though. |
|
I noticed the mouse cursor seems glitchy when moving around the screen |
Formatting fixes and unnecessary code cleanup
Work in progress support for the Macintosh Portable.
As of 438235f it is mostly functional with some bugs that need to be fixed.
TODO
Interrupt issues on restart
When using the Restart option to reboot the system, if an ADB interrupt is generated during early boot it will cause the system to crash.
Power manager state issues on reset
Occasionally when resetting, the power manager does not seem to be in the correct state and future handshake attempts fail.
PRAM persistence/saving
PRAM does not currently save/load since the changes that were made to the core RTC at one point have not been implemented into the power manager's PRAM method.
Floppy drive order
This is a minor thing, but the floppy drive order seems a bit off from how the ROM interprets it.
As it is now the order is:
It could be reordered to Upper, Lower, External, or since the Portable usually only has the lower drive installed it could be Lower, Upper, External.
Memory space with no /DTACK
Certain memory space such as the ROM disk and SLIM ROM space does not normally generate /DTACK. At the moment this just returns open bus but it should likely return a bus error instead.
This does not cause any issues that I have seen other than slightly increased scan time when checking for ROM disks.
ADB auto polling
ADB auto polling has not been implemented yet.
I am not sure what issues this causes if not present.