Technically it could be expanded all the way to 640KB
But only the first 256 KB was on the motherboard, you needed a memory expansion card for the extra 384 KB, and I don't think they really existed in 1982.
Actually, you could somewhat break the 640KB limit in the early days (not that most people could afford that much RAM) days. Until EGA came along in 1984, there was free address space upto 704KB that you could use as conventional memory without much issue (or 736KB if you limited yourself to CGA).
And later we had the mess of EMS, which would work on the original 5150 with the right expansion card (and the right software to take advantage of it, like Lotus 123)
Right, that ROM BASIC was such a waste for them for years.
Some clone makers quickly found out ways take advantage of that space adding more RAM there. Then bit later it came area where you could even map over 1MB placed memory blocks there with a config.sys loaded driver.
Comments
640
64, not 640.
Well, 16 KB - 256 KB, with a directly addressable 64 KB and a segmented architecture to reach further.
I had one of these in mid 1982 to late https://en.wikipedia.org/wiki/IBM_Personal_Computer
Technically it could be expanded all the way to 640KB
But only the first 256 KB was on the motherboard, you needed a memory expansion card for the extra 384 KB, and I don't think they really existed in 1982.
Actually, you could somewhat break the 640KB limit in the early days (not that most people could afford that much RAM) days. Until EGA came along in 1984, there was free address space upto 704KB that you could use as conventional memory without much issue (or 736KB if you limited yourself to CGA).
And later we had the mess of EMS, which would work on the original 5150 with the right expansion card (and the right software to take advantage of it, like Lotus 123)
And it included a cassette interface.
And BASIC in ROM.
Right, that ROM BASIC was such a waste for them for years.
Some clone makers quickly found out ways take advantage of that space adding more RAM there. Then bit later it came area where you could even map over 1MB placed memory blocks there with a config.sys loaded driver.