Skip to main content
Share Your Experience: Take the 2024 Developer Survey

Questions tagged [memory]

For questions about computer memory in a retrocomputing context

Filter by
Sorted by
Tagged with
43 votes
11 answers
9k views

How did early laser printers get by with so little memory?

The first HP Laserjet only had 128K of memory. To print an area of 7.5 by 10 inches at 300 DPI requires 844K if it's kept as a single bitmapped image. Obviously they were doing something clever to ...
Mark Ransom's user avatar
40 votes
8 answers
12k views

Why is EEPROM called ROM if it can be written to?

Is there a historical reason? Since it is rewritable it isn't read only by definition, so why call it so?
Michael Stachowsky's user avatar
39 votes
4 answers
9k views

When did computers stop checking memory on boot?

I remember my old 8088 used to do this (640K OK) but can't remember seeing anything like this since. Does this still happen and it's just not visible? If not, when did it stop, and why? (Imagining ...
dashnick's user avatar
  • 1,258
35 votes
3 answers
5k views

Why did DOS-based Windows require HIMEM.SYS to boot?

My understanding is that all versions of Microsoft Windows that ran on top of DOS — that is, the lineage from Windows 1.0 up to Windows ME, even though the reliance on DOS diminished over time — ...
mkay's user avatar
  • 699
33 votes
7 answers
11k views

Last computer not to use octets / 8-bit bytes

I am old enough to remember computers that were not octet oriented. E.g. the first that I used was an ICL 4120. It had 24 bit words which were, when necessary, divided into four 6-bit characters. ...
badjohn's user avatar
  • 2,024
33 votes
6 answers
32k views

Windows 98 with 2GB of RAM

I have assembled a retro-gaming PC out of an old Shuttle SN45G with a Windows 98/Windows XP dual boot. The motherboard can handle 2GB of RAM, but apparently Windows 98 can only handle 1 GiB. Windows ...
Informancien's user avatar
  • 2,657
32 votes
1 answer
3k views

Did DOS zero out the BSS area when it loaded a program?

As an example, say we have a DOS MZ EXE file that's around 20 KiB in size. The EXE header contains the value 0x1400 at offset 0x0A indicating that the program is requesting 5,120 paragraphs (or 80 KiB)...
smitelli's user avatar
  • 1,769
30 votes
7 answers
18k views

How can you run a program that is bigger than RAM?

Suppose you have a program that is 218 words long. However you are using a 16 bit machine and have 216 words of RAM. (The RAM is directly addressed by the CPU). On the other hand, you have unlimited '...
Jet Blue's user avatar
  • 2,005
30 votes
4 answers
5k views

How did the X-Men game for Sega Genesis have its state survive a console reset?

The Sega Genesis system had a rather interesting game. X-Men (1993) was based on the popular cartoon version of the comic book series. But it had what was still one of the most unique (and unintuitive)...
Machavity's user avatar
  • 503
30 votes
1 answer
7k views

Why did Nintendo 64 (1996) memory cards require a battery inside them to retain data whereas the PlayStation (1994) ones did not?

The Nintendo 64 was released in 1996. Its "Controller Pak"s, which was the name of the memory card that you put inside the controller to save the progress in certain games, require a battery ...
Jacon's user avatar
  • 303
27 votes
7 answers
7k views

Did anyone ever run out of stack space on the 6502?

Unlike its main rival the Z80, the 6502 had a size limit of 256 bytes for the hardware stack. That sounds like a very tight limit, but in my experience, it was never actually an issue; by the time you ...
rwallace's user avatar
  • 61.5k
27 votes
4 answers
5k views

Why was it common to reference memory locations using negative numbers on some BASICs?

If you had an Apple II, it was common in BASIC to reference memory locations above the 32K point by using a negative number. For example, if you wanted to click the speaker you would PEEK/POKE -16336 ...
bjb's user avatar
  • 16.4k
27 votes
3 answers
12k views

How does the Gameboy's memory bank switching work?

I'm writing a Game Boy emulator, but I don't completely understand how its memory mapping works. Here is what I (think) I know (and don't know). The CPU can address up to 0x10000 memory locations ...
dav's user avatar
  • 1,059
27 votes
1 answer
3k views

What is a dropfile?

After reading Charles Duffy's comment on Was there a clearly identifiable "first computer" to use or demonstrate the use of virtual memory?: I had a computer science professor around 1999 ...
wizzwizz4's user avatar
  • 18.6k
26 votes
6 answers
3k views

Core Memory Stability

How reliable was the ferrite ring core memory system? When the power went off, did all the magnetic positions of the iron rings in the program wire grid remain exactly as they were?
Bob Rutledge's user avatar
26 votes
3 answers
5k views

Why do old computers (PCs) perform a long memory test on every boot?

Basically any computers from the mid 90s and earlier perform a slow memory check on every single boot. The more memory there is present, the slower that process becomes, for example: https://www....
Andreas Hartmann's user avatar
25 votes
5 answers
7k views

What were wait-states, and why was it only an issue for PCs?

PC compatibles in the 1980s were often advertised as having zero, one, two, or sometimes more "wait states". Zero wait states was the best. Basically, the wait-states I am asking about are due to the ...
Brian H's user avatar
  • 60.8k
25 votes
2 answers
4k views

How did the ZX80 store both a useful program and screen memory?

I have a vague recollection from my earliest days that the ZX80 only shipped with 1K of RAM. If this RAM was used to store both the program and the contents of the 32x24 screen, wouldn't that mean ...
user avatar
24 votes
8 answers
8k views

Why was computer memory so expensive and scarce?

Computer memory used to be a limited and expensive asset for a long while (for example, in computers with 16KiB RAM or less, compared to the 2 MiB of my first PC (an Intel 486) in 1995 and current day'...
Piovezan's user avatar
  • 421
24 votes
2 answers
3k views

Details of video memory access arbitration in Space Invaders

I am working on an FPGA implementation of the original Space Invaders arcade machine and I'd like to implement access arbitration between the CPU and the video system. I can imagine several ways of ...
Cactus's user avatar
  • 2,750
23 votes
11 answers
5k views

Was it possible to write a novel on a BBC Micro 16kb/32kb memory era computer without expansions?

BBC Micro model B has 32k memory. An average book, like Mary Shelley's Frankenstein, has about 350,000 characters in it. So you'd need over 10 times the memory to load it in, plus the software to edit ...
NibblyPig's user avatar
  • 341
23 votes
3 answers
5k views

Did any x86 CPU optionally trap unaligned access?

x86 CPUs have always supported unaligned load/store. Early RISC CPUs didn't. So imagine writing portable code on a 386. It seems to work fine, but how do you know you haven't accidentally misaligned ...
rwallace's user avatar
  • 61.5k
22 votes
8 answers
6k views

Which CPUs, if any, had an 8-bit address space?

Even the Intel 4004, which had a 4-bit word size, had a 12-bit address space. I'm wondering if any commercial CPUs had an 8-bit or similar address-space for programs, data, or both. I'm particularly ...
lookaside's user avatar
  • 501
22 votes
10 answers
5k views

Why did BASIC programs tend to READ a redundant copy of DATA?

Take for example this BASIC version of ELIZA which starts out (in lines 50–170) by a number of READ loops which copy DATA (lines 1340 and following) into a handful of arrays. Isn't this rather ...
natevw's user avatar
  • 2,947
22 votes
5 answers
4k views

How did old computers address far more than 64K of memory despite only having a 16 bit address bus?

I have an old Sharp PC-G830 pocket computer from the '80s that has 32K of RAM and 256K of ROM. I also have a simple single board computer I built with 128K of RAM and a few megabytes of ROM from a ...
Shades's user avatar
  • 331
22 votes
2 answers
4k views

What happened to bubble memory - is it still being sold?

At one time bubble memory was advertised as being able to store huge amounts of data in the size of a sugar cube. I don't remember what the memory density was compared to today's SD cards. What ...
Barnstormer's user avatar
  • 1,359
21 votes
3 answers
5k views

What is causing the problem with the RAM in this (claimed) Spectrum 48k?

I bought what was claimed by the seller to be an Issue 4S Spectrum 48k. I tried loading games and some worked while others didn't. Turns out it was the 16k ones that worked and 48k didn't. This ...
popeymon's user avatar
  • 423
21 votes
2 answers
3k views

68000 and memory access speed

On the one hand, I get the impression that memory chips around 1980 could be accessed no faster than 2 MHz. On the other hand, the 68000, introduced in 1979, had a typical clock speed of 8 MHz. How ...
rwallace's user avatar
  • 61.5k
20 votes
2 answers
4k views

Did any notable product use Intel's first RAM?

The 3101 SRAM was Intel's first product. At $99.50 for 64 bits, it had enough memory to store the characters expensiv. (Sorry, the final e costs extra.) Is there a record of any product using it?
DrSheldon's user avatar
  • 16k
20 votes
2 answers
2k views

Did 486 SMP systems provide Total Store Ordering?

Cache-coherent SMP (symmetric, or shared-memory, multi processing) systems can provide various grades of memory ordering guarantees, the stronger ones being more expensive but making it easier to ...
rwallace's user avatar
  • 61.5k
19 votes
12 answers
6k views

Did early assembly games use hardcoded memory locations?

In the era of C64, Apple][ GS, and SNES, did the games use hardcoded memory locations, or did they let the assembler help them (like modern assemblers)? If yes, how did they manage the memory?
Ignis Incendio's user avatar
19 votes
3 answers
5k views

Do you need to allocate memory before you use it in MS-DOS?

In modern operating systems (for example: Windows), you can't access a memory location before you allocate that memory location to your program (or else a segmentation fault will occur). I am ...
user6989's user avatar
  • 191
19 votes
2 answers
2k views

Why do drives occupy memory on Amigas

I was reading this question, and it sparked an old memory. I had an Amiga 600 a long time ago. And I used to play Secrets of Monkey Island on it, great game. But then I upgraded the computer and ...
Omar and Lorraine's user avatar
19 votes
4 answers
4k views

Why did the Cray-1 have 8 parity bits per word?

According to https://en.wikipedia.org/wiki/Cray-1 The Cray-1 was built as a 64-bit system, a departure from the 7600/6600, which were 60-bit machines (a change was also planned for the 8600). ...
rwallace's user avatar
  • 61.5k
19 votes
3 answers
2k views

How did the IBM PC handle multiple physical devices serving memory at the same physical address?

I'm trying to figure out how the IBM 5150 PC handled the case where multiple physical devices (memory chips) were mapped to the same address within the 8088's physical address space. The closest I've ...
user's user avatar
  • 5,296
19 votes
5 answers
944 views

Did any computers use automatically-operated mechanical storage as electronically-read-addressable memory

From what I understand of ENIAC, it had a very large number of manually-operated rotary switches which behaved as ROM. While programming ENIAC in the early days required a plugboard, the machine was ...
supercat's user avatar
  • 36.6k
18 votes
5 answers
5k views

Why did old consoles have special RAM dedicated for a specific task?

Even in the PlayStation/Saturn era, they had like little RAM chips which were dedicated to just "sound", or "video", or "general". Since they still needed to have the RAM ...
Supernintendo Chalmers's user avatar
18 votes
5 answers
4k views

80s DRAM chips: one per bit of data bus width?

As I understand it, in the eighties the typical way of handling memory was one RAM chip per bit of data bus width. Suppose you were building a 16-bit machine and you wanted to give it 32K of RAM, you ...
rwallace's user avatar
  • 61.5k
18 votes
3 answers
6k views

Did anyone ever put half a megabyte of memory in an Altair?

The Altair 8800 typically, at least in the early years after its release in 1975, operated with no more than a few kilobytes of memory, for the excellent and sufficient reasons that memory was ...
rwallace's user avatar
  • 61.5k
18 votes
4 answers
2k views

Historical price of ROM

Historical price charts for RAM are quite readily available, e.g. in the mid-seventies a ballpark figure was a penny a byte. What was the price of ROM (assuming you were getting the chips produced in ...
rwallace's user avatar
  • 61.5k
18 votes
1 answer
2k views

What did it cost the 8086 to support unaligned access?

The Intel 8086 supported unaligned loads and stores of 16-bit data, e.g. mov ax, foo was guaranteed to work even if foo was odd. What did this cost, in terms of performance and chip area, compared to ...
rwallace's user avatar
  • 61.5k
18 votes
1 answer
1k views

Which computers had features added purely for tax reasons?

I was recently reading about the Amstrad CPC 472, which was a CPC 464 with an extra, unusable 8KB of RAM added to avoid Spanish import fees on computers with 64KB or less. Did any other computers have ...
user3570736's user avatar
  • 1,782
17 votes
9 answers
4k views

Z80 and video chip contending for random access

Back in the 8-bit days, I used 6502 computers, where the story about memory access was easy to understand. RAM chips of the late seventies and early eighties could do 2 MHz (or a bit more e.g. 2.6 in ...
rwallace's user avatar
  • 61.5k
17 votes
3 answers
4k views

Status of brute forcing all possible memory states of a video game [closed]

For an old video game that has a small enough memory footprint, it should be possible on exponentially larger modern systems to create a graph of all possible states of memory and the inputs that ...
TomKern's user avatar
  • 279
16 votes
6 answers
2k views

Was photographic film ever used for digital data storage?

I was thinking about how Williams Tubes worked and how one could hypothetically "snapshot" (quite literally!) the state of a computer's memory by simply taking a photograph of the phosphor end of a ...
Dai's user avatar
  • 823
16 votes
8 answers
5k views

Could a Z80 address a total of 128 KB of ROM and RAM?

In a nutshell, could the Z80 address 64 KB of ROM and 64 KB of RAM, or just 64 KB for both RAM and ROM? Unfortunately, I couldn't find an exact and a direct answer to my question while searching. ...
Shams M.Monem's user avatar
16 votes
6 answers
5k views

Can a 16K computer be upgraded to 64K?

A slightly odd question, but is it possible to take an old 16K computer that wasn't designed for memory upgrades, such as a Commodore 16 or PET 4016, and upgrade it to 64K as a hardware hack? I'm not ...
rwallace's user avatar
  • 61.5k
16 votes
3 answers
5k views

What happened to ZIP RAM?

I have several retro machines and add-on cards for the Amiga that use ZIP RAM. This vertically mounted chip design enjoyed a brief popularity in the early 1990s, in between the original DIP DRAM and ...
Brian H's user avatar
  • 60.8k
16 votes
3 answers
3k views

Speed of early ROM versus RAM chips

In the late seventies, up through around 1981, the maximum access speed of off-the-shelf RAM chips was around 2.6 MHz. Did the same speed limit apply to ROM chips of the same era? If not, what would ...
rwallace's user avatar
  • 61.5k
15 votes
4 answers
3k views

Is this the reason why fread/fwrite has 2 `size_t` arguments?

It just came to me that, the C standard I/O functions fread and fwrite are having 2 size_t arguments because of I guess possibly, that on some systems, there may be more memory of which whose size can ...
DannyNiu's user avatar
  • 365