←back to thread

265 points colejohnson66 | 1 comments | | HN request time: 0s | source
Show context
deater ◴[] No.44424644[source]
I have to say as a 6502 assembly programmer I have wasted many hours of my life tracking down the same issue in my code (forgetting to put an # in front of an immediate value and thus accidentally doing a memory access instead). Often it's like this case too where things might accidentally work some of the time.

Worse than the floating-bus in this example is when it depends on uninitialized RAM which is often consistent based on DRAM so the code will always work on your machine/emulator but won't on someone else's machine with different DRAM chips (invariably you catch this at a demoparty when it won't run on the party machine and you only have 15 minutes to fix it before your demo is about to be presented)

replies(3): >>44425118 #>>44426179 #>>44426208 #
anonymousiam ◴[] No.44425118[source]
Was there ever an architecture that used dynamic memory with a 6502 CPU? In my (limited?) experience, that platform always had static RAM.
replies(7): >>44425275 #>>44425280 #>>44425295 #>>44425930 #>>44426580 #>>44428973 #>>44433576 #
1. tom_ ◴[] No.44428973[source]
The mid-1980s Acorn 8-bit range all used dynamic RAM for the onboard memory.

The BBC Micro range all had 250 ns DRAM, with the CPU getting 2e6 accesses and the video getting the other 2e6 (taking advantage of the 6502's predictable RAM access rate). The display memory fetches served to refresh the RAM.

I don't know much about the Acorn Electron, which was very different internally, but it had dynamic RAM as well. I expect the video refresh was used to refresh the DRAM in this case too - as the display memory layout was the same, and so over every 640 microsec it would touch every possible address LSB.

The 6502 second processor had DRAM as well, refreshed by a circuit that ran on a timer and stole the occasional cycle from the CPU at some rate.

Though static RAM was quite common for RAM upgrade boards (of one kind or another), presumably cheaper for this case than the alternative.