Hot answers tagged

97

Look at the development: ROM = read-only memory = can only be read when on the board, programmed in the chip factory. PROM = programmable read-only memory = can be programmed with a special programmer, but read-only when on the board. EPROM = erasable programmable read-only memory = can be repeatedly programmed with a special programmer, after erasing it ...


44

It might be important to know that the 3101 was neither a genuine Intel development, nor intended as a RAM - at least not in a way we see RAM today. After all, what use could there be in 1970 for a RAM 30 times faster than average core but quite small, just a few words ... hmm ... what data store can be small but should be fast? Exactly: Registers! The 3101 ...


42

To print an area of 7.5 by 10 inches at 300 DPI requires 844K if it's kept as a single bitmapped image. Does it? Maybe. Then again one cold think of many simple ways (like RLL) to compress a rendered image fast and decompress it at a speed quite capable to keep up with the print-'head'. Obviously they were doing something clever to minimize the hardware ...


31

EEPROM can't be "written to." It can be programmed. Programming is different. When there's EEPROM in a CPU's physical address space, ordinary write cycles will not affect it. Something out of the ordinary has to happen in order to change the EEPROM's contents. The oldest PROMs and EEPROMs had to be physically removed from the system and programmed ...


26

In addition to Raffzahn's usual excellent answer, a few important things to note: PCL still exists. You can (I do...) still write software that sends simple PCL commands to a printer to select fonts, print text, etc. Sending an entire page, of text, as a bitmap to a printer is the way GDI printers work - and is a Very Bad Thing. The original HP LaserJet ...


26

Did anyone ever put that much memory in an Altair, IMSAI or other 8080/Z80 S-100 bus machine? Has been done a lot of times. Remember, S100 has been used all the way thru the 1980s into the 1990s. RAM sizes did pass the basic 64 Ki already before 1980 and went way beyond 2 MiB soon after. Boards were available by all major S100 supporters, including Cromemco,...


24

While the 386 did not yet have an internal cache, many 386-era chipsets supported an SRAM based CPU-external cache memory of maybe 32KB or so, consisting of a very fast (for the time) tag SRAM which stored the correspondence between RAM addresses and SRAM addresses, and 4-8 fast SRAMs holding the cache contents. Not sure about the late 1980s, but in the ...


24

You use the Amiga DOS ADDBUFFERS command to add (or remove) the configurable buffers for your drives. ADDBUFFERS adds buffers to the list of buffers available for a drive. Although adding buffers speeds disk access, each additional buffer reduces free memory by approximately 512 bytes. The default buffer allocation is 5 for floppy drives and 30 for hard ...


22

The 3101 was not a product that came out of thin air. According to Intel's own sources, Honeywell Inc. had anounced they would buy 64-bit memory chips from any vendor that could supply them (so even from a then unknown newcomer like Intel). (The fact that, eventually, Honeywell did not buy from Intel, is a different story) So, this product already had a ...


20

Quote from VICE manual: Load the specified file into memory. If no address is given, the file is loaded to the address specified by the first two bytes read from the file. If address is given, the file is loaded to the specified address and the first two bytes read from the file are skipped.


19

DATA is a kind of weird holdover from FORTRAN and batch-processing. It is not memory efficient, but it was part of the programming vocabulary of the day. In FORTRAN, inline data can look like this: DIMENSION MARKS(10) DATA MARKS/31,32,33,34,35,36,37,38,39,40/ This fills the ten integer values of the MARKS array with [31,32,33,34,35,36,37,38,39,40] ...


19

Let's consider the case of floppies Floppy drives use DMA to transfer disk data to memory, but there are 2 intermediary steps: The trackdisk device has to read the data as raw data (with error corrections and all). One 0x1600 data track needs twice as much memory for raw data Then it has to decode it into tracks Then the file is extracted from the sectors ...


17

According to the advertisements of the late eighies, you could find RAM having an access time ranging from 120 to 80 ns (150 to 210 cycle times). Which means essentially up to 6 million full access operations per second. A 386SX-25 could execute a typical register to register instruction in 2 cycles of 40 ns. Would it (and all the PC of the era) need to ...


16

It can't be 'written to' in the sense of storing useful information written by a running program in the computer. It can be erased and re-programmed, which generally requires a special ROM programmer (rather than erasing and rewriting in place). So, the readonly-ness is from the viewpoint of the computer in which it's used. These days the line between that ...


16

If you count Altair clones, yes. For the original Altair 8080, quite possibly (if the PSU was capable of powering eight of the IMSAI memory boards along with the CPU and I/O boards) and for the Altair 8080b, almost certainly (it had a more powerful PSU). IMSAI did pretty much exactly what you suggested in your question, but a year earlier than the date you ...


14

The Tandy Color Computer 2 could be upgraded from 16k to 64k by simply swapping chips and adding a jumper. Early revisions used eight 16k x 1 bit or 64k x 1 bit DRAMs. The 16k chips were type MCM4517 or 2118, which only require a +5V power supply (unlike the 4116 which needs +12V, +5V and -5V). Later revisions used two 16k x 4 bit or 64k x 4 bit DRAMs. Here ...


14

Given a subsystem such as a video display that needed a certain amount of guaranteed bandwidth, was it possible on the Z80 to set things up so that the subsystem would always get that bandwidth and yet the CPU would never be paused or slowed, as can be done on the 6502? No, at least not unless the video runs way slower than the CPU. And even in that case it ...


13

The 80386 bus cycle is two clock cycles minimum. So a 25 MHz 80386 would have a 80ns bus cycle, and each wait state would add 40ns. So it only takes 2 wait states to use 150ns memory and 4 wait states to use 210ns memory. True, with 4 wait states at 25 MHz, the memory access cycle is 240ns, or about 4 MHz. One thing that also has to be considered that on ...


13

D'oh! I can provide at least a partial answer to my own question: Alternatively, why wasn't it particularly common for programmers to assign array items directly — as this Apple 1 port of ELIZA does — to leave more RAM free? What I was imagining here was that instead of something like: 5 DIM A$(4) 10 FOR I = 1 TO 4 : READ A$(I) : NEXT I 20 DATA "ONE&...


12

To add to the other answers: Under Windows and GEM, printer drivers could store the current page as a metafile and rasterize it repeatedly as a series of horizontal bands, each band being large enough to fit into printer memory. This was slower than sending the data directly to the printer (since each page had to be rasterized repeatedly) but allowed an ...


11

RAM is designed to be quickly written many trillions of times without wearing out. Flash and EEPROM devices, by contrast, are designed to be quickly read many trillions of times without degradation, but writing will be orders of magnitude slower and impose significant wear; an EEPROM device that can reliably endure 10,000,000 write operations without ...


11

Siemens PC-D, a 186 based DOS machine (*1) has 32 sockets to be either populated by 64 Ki chips or 256 Ki, allowing memory configurations from 128 KiB up to 1 MiB: Two rows of 4164 (8 each) -> 128 KiB Four rows of 4164 -> 256 KiB (*2) Two rows of 41256 -> 512 KiB Four rows of 41256 -> 1024 KiB Selection was done by a single DIP switch, that did ...


11

They simply didn't let you send much of a bitmap The first HP LaserJet printers on the market required you send jobs via PCL language. The language was tuned to pretty much not let you do anything the printer couldn't handle. PCL for the whole page needed to fit in the very limited RAM. Needless to say, PostScript was out of the question on these early ...


11

READ and DATA were features of Dartmouth BASIC in 1964. Thus, anything that wanted to call itself BASIC really had to implement them. The computing model of the day was "read some input; do some computing; write some output". Normally, in other languages on other contemporary systems, you'd be using card or paper tape. The data were on cards or ...


10

On a Commodore 64 or Commodore 128, the upper four bits of the data bus will be left floating when reading color memory. On my vintage Commodore 128, floating data bits would generally read as high, but on the Commodore 64 they would be more likely to report whatever value had been last output to the data bus. Because CPU cycles alternate with display data ...


9

What's the question? First problem here is what is to be considered speed. Random access time? Cycle time? Maximum memory thruput? Average memory thruput? Either value per chip or for the whole memory subsystem? For the following I'll go with maximum memory band for the whole memory subsystem. That is when a memory page is opened and successive access is ...


9

Looking at the Wikipedia article on the LaserJet, it looks like the printer couldn't rasterize a whole page of graphics and you needed a 512K LaserJet Plus to be able to do graphics covering most of a page. That would mean the controller would be rasterizing text to the drum using the built-in ROM raster fonts. The LaserJet Plus followed in September 1985, ...


9

The Apple IIe actually had an incredibly painful memory map; the answer you’ve linked to is about auxiliary RAM cards that add more than an additional 64kb of RAM to the system, i.e. the complete total is the base 64kb plus the first 64kb of auxiliary plus some more 64kb quantities of auxiliary. What the register mentioned in that question does is select ...


8

We can infer the price of one of the first ROM reading the agreement signed between the Japanese Nippon Calculating Machine (later Busicom) and Intel in February 1970 (available here). The agreement provided for manufacturing of a set of 4 chips: RAM, ROM, shift register, CPU (this was the famous Intel 4004, made by Federico Faggin). ROMs cost consisted of a ...


8

TL;DR: Simple answer: Because it's the way BASIC is defined. Original BASIC had no way to access files at all. DATA lines were the only way to add predefined data to a program. The idea was essentially to have a stack of items - originally only numbers, strings where only added way later - that could be read like a stack of cards. More Important: It is ...


Only top voted, non community-wiki answers of a minimum length are eligible