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

Apple IIgs ramsize issues #6465

Closed
gorlik opened this issue Mar 19, 2020 · 3 comments
Closed

Apple IIgs ramsize issues #6465

gorlik opened this issue Mar 19, 2020 · 3 comments

Comments

@gorlik
Copy link

gorlik commented Mar 19, 2020

Apple IIgs ramsize is missing 128K in almost all configurations.

The issue is that ramsize considers the total amount of RAM in the system including the 128K of "slow memory".
i.e. specifying 8M results in 128K + 8064K of fast RAM (mapped in banks 00 to 7D). In a real apple IIgs with a 8MB ram expansion the fast RAM should be 8192K mapped in banks 00 to 7F.

the missing 128K affect all configurations (including the default)

there are at least 3 possible fixes to the issue:
1- Ignore "slow ram" in the ramsize. Likely the simplest fix, but might not be totally correct in terms of documentation.
2- allow any multiple of 64KB for ramsize and let the user decide (expansions of odd sizes are uncommon but the real HW will detect them properly)
3- change ramsize meaning into "ram expansion" that adds to the base memory of the system.

I'll be happy to help with a patch but I'd like to hear the developes opinion on the best way to fix the issue.
thanks!

@rb6502
Copy link
Contributor

rb6502 commented Apr 11, 2020

I assume the sizes are only wrong on ROM 03, they're correct on the ROM 01 driver apple2gsr1?

@gorlik
Copy link
Author

gorlik commented Apr 11, 2020

the sizes are odd for ROM1 as well.
mame apple2gs -ramsize 2M -> 896K of expansion memory mapped from bank 0x10 to 0x1D
mame apple2gsr1 -ramsize 2M -> 1792K of expansion memory mapped from bank 0x02 to 0x1D

assuming ramsize means expansion memory (option 3 in my original post) the correct behavior should be:
mame apple2gs -ramsize 2M -> 2048K of expansion memory from bank 0x10 to 0x2F (total fast RAM 3072K + 128K of slow ram)
mame apple2gsr1 -ramsize 2M -> 2048K of expansion memory from bank 0x02 to 0x21 (total fast RAM 2176K + 128K slow ram)

@rb6502
Copy link
Contributor

rb6502 commented Apr 26, 2020

Thanks, I've resolved this with option 1 (don't include the slow RAM in E0/E1 in -ramsize), which isn't exactly right but makes sense within the architecture of the machine.

rb6502 added a commit that referenced this issue Apr 26, 2020
hackbar pushed a commit to hackbar/mame that referenced this issue Apr 26, 2020
@rb6502 rb6502 closed this as completed May 14, 2020
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

No branches or pull requests

2 participants