You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
The Z80 has an address bus of 16 bits limiting memory access to 64k. Some retro and modern computers support more than 64k of RAM, typically via bank switching.
There are two ways in which RAM beyond 64k could be used in CSharp-80:
Increased space for the compiled C# program itself. This could be achieved by assigning compiled method code to memory banks and bank switching on calls to the methods.
Increased space for the heap. This would require a change in the representation of reference types which are currently just 16 bit pointers into the heap. Adopting an approach of splitting the 16 bit pointer into part that determines the bank and the remainder that determines the location within the bank is a possibility. There may be some issues with the size of banks limiting the maximum size of heap objects though.
Some examples of Z80 computers with support for more than 64k of RAM:
ZX Spectrum 128
TRS-80 Model 4
MSX
ZX-Sprinter
ZX Evolution
The text was updated successfully, but these errors were encountered:
The Z80 has an address bus of 16 bits limiting memory access to 64k. Some retro and modern computers support more than 64k of RAM, typically via bank switching.
There are two ways in which RAM beyond 64k could be used in CSharp-80:
Some examples of Z80 computers with support for more than 64k of RAM:
The text was updated successfully, but these errors were encountered: