frozen-signal / apple_iie_mmu_iou Goto Github PK
View Code? Open in Web Editor NEWAn implementation of the Apple IIe's MMU and IOU custom chips
License: Creative Commons Zero v1.0 Universal
An implementation of the Apple IIe's MMU and IOU custom chips
License: Creative Commons Zero v1.0 Universal
The game The Black Cauldron has some weird artifact.
The 'blank' screen (before the scene is drawn on) has some artifact, but the portions that have been drawn are correct.
Here's what it looks like while the scene is being drawn:
On rare occasions, the game will fail to load, hanging on a loading screen. On even more rare occasion, the game will run perfectly.
Possibly linked to #39
Hopefully, not due to DRAM about to fail.
With this setup:
The games "The Black Cauldron" fail to load and the game "ALIENS" have visual glitches.
Presently all Apple IIc features (VLC HIGH) has been excluded from this implementation.
Currently all soft-switches of the IOU are cleared when RESET_N goes LOW.
The correct behaviour is that RESET_N LOW should not change the ITEXT and MIX soft-switches
Possibly related to #4
Maybe a bus problem that would prevent the CPU to access C03X?
the MUX RA has changed. Need to update the test.
The test is disabled in the meantime.
Probably related to #14
With a RAMWORKS 1 and 3, the RAM is not recognized when using this setup:
Will work if a:
The implementation in this repository works, but just for safety, bring the signal timings of the IOU and MMU closer to the ASICs.
Presently all Apple IIc features (VLC HIGH) has been excluded from this implementation.
The DRAM ICs used by the Apple IIe requires a hold delay on /CAS. Fortunately for the Mainboard's RAM access, the column address is valid until the falling edge of Q3, which is more than enough hold delay.
But for the AUX memory, the column address is strobed on the falling edge of Q3. This may cause a problem because, in the current implementation, that's when ORA0-7 becomes invalid.
So, there might be a race condition for the column address strobe on the AUX DRAM.
Maybe add a delay to make ORA0-7 remain valid a short time past the falling edge of Q3 would make it safer?
At power-on, POC remains HIGH and RESET_N goes immediately High-Z.
Expected behaviour is:
Create a document / datasheet describing timings requirements for the IOU and the MMU
Implementing a hardware solution with the current state of the project is not a trivial task.
Some games are not working when using a specific setup. Not exactly sure what could be the problem. Possibly another timing issue.
This setup works without problem:
But using instead a 65C02 with enhanced ROMs will cause problems with Doulbe HiRes games. For example, Aliens will hang when switching to the graphic mode.
Seems to be tied to the 80-Col card, but it's possible to re-create the problem without the card present. For example, Aliens normally can run without the 80-Col card. But will still hang without it.
Apple IIe Diagnostic v2.1 also reports problems with the 80-Col card.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.