Skip to main content

Questions tagged [memory-layout]

For questions regarding the layout or mapping of memory in a retrocomputer.

10votes
2answers
2kviews

What is a plausible reason for the extra hardware/cost for the Sol-PC "phantom" ROM?

The Sol-PC (also known as the Sol-10 and Sol-20) has ROM on the "personality card" addressed at $C000-$C7FF and, in a minimal configuration, RAM (for system use and the video frame buffer) ...
cjs's user avatar
  • 28.5k
14votes
2answers
3kviews

How did MS-DOS utilities like 386MAX relocate drivers from lower 640 KB to high memory?

You copy the driver code and data but how do you redirect everything that may have jumped into the old entry point? You could scan all the interrupt vectors and see if any of them pointed to that ...
Miss Understands's user avatar
12votes
3answers
2kviews

Have there been any parallel blitter implementations?

I read about blitters - history and technical implementation (what I could understand), for example in Amiga and Bally Astrocade. The principle is that there is a fast copying of memory from one place ...
Alex's user avatar
  • 733
13votes
2answers
2kviews

Which programming language/environment pioneered row-major array order?

The Wikipedia page describing specifics of row-major vs column-major storage order for multi-dimensional arrays, mentions, among others, C/C++ (*1), Pascal and PL/I for the former, and, surely, ...
Leo B.'s user avatar
  • 21.5k
1vote
1answer
229views

Is the RAM layout in Amstrad CPC .SNA snapshot files in a simple straightforward order?

I'm looking at the .SNA snapshot file format for Amstrad CPC emulators based on the Multiface Two device. I'm used to the ZX Spectrum which had 16K ROM and 48K RAM and the 48K .SNA snapshot format is ...
hippietrail's user avatar
11votes
1answer
933views

Are there official, standard, or conventional names for the screen RAM addresses on the ZX Spectrum?

I'm working on a disassembly tool for the Sinclair ZX Spectrum and want to do things "right" when possible. I remember seeing lists of ROM routines, system variables, and memory addresses ...
hippietrail's user avatar
9votes
2answers
2kviews

How does the 8086 jump instruction work when the target address overflows?

For educational purposes, I'm developing my own software emulator for the 8086 microprocessor with VGA/MCGA support. Although it's far from complete, it's advanced enough to start using a BIOS (though ...
ExecAssa's user avatar
15votes
4answers
4kviews

Can DOS make use of more than 640 KB of conventional memory on 80186?

Can I have more than 640 KB conventional RAM under some DOS? I'm looking at an 80186 PC that has RAM at address A0000. Video RAM starts at B0000 as expected for a Hercules; A0000 is just more main ...
Joshua's user avatar
  • 1,986
14votes
3answers
3kviews

Why does PC video memory base address change depending on video mode?

It is rather well-known that, with VGA-compatible PC video adapters, in black-and-white text modes video memory is available at linear address 0xB0000, in colour text mode at address 0xB8000, while in ...
user3840170's user avatar
8votes
1answer
1kviews

C64 char screen plot routine - not clear about reason for logical OR

I'm trying out some 6502 assembly language, specifically using Kick Assembler. I have the following routine that just sticks a character on the text screen at a specified x and y, it's taken from the ...
Alan B's user avatar
  • 5,187
13votes
1answer
1kviews

What problem does LOADFIX solve?

From MS-DOS help for the LOADFIX command: Some programs will display the "Packed file corrupt" message when all or a portion of the program has been loaded in the first 64K of conventional ...
user10191234's user avatar
10votes
2answers
2kviews

How to use all memory on an IBM PC with 8086

I'm developing software for the IBM PC with an 8086 processor. I want my program to use all available memory. I know that I can use DOS int 21h function AH=48h to allocate all available conventional ...
pts's user avatar
  • 4,095
12votes
1answer
663views

How to write Win16 program with only a single segment (combined code+data)?

I wrote a simple Win16 program in NASM assembly. It works on Windows 3.11. (Source code: https://github.com/pts/mininasm/blob/master/demo/hello/helljw16.nasm .) When I tried to combine the code and ...
pts's user avatar
  • 4,095
22votes
4answers
3kviews

Was it possible to cause persistent changes to a mid-1980s IBM-PC using POKE in GWBASIC?

TL;DR: Using the DEF SEG and POKE commands in GWBASIC, was there any way to make changes to an IBM-PC compatible computer that would (a) persist even after a reboot and (b) cause an increase in crash ...
Schmuddi's user avatar
19votes
6answers
5kviews

Where is DOS stored in memory when a program starts?

When the execution of a COM program begins, DOS jumps to address 100h. But at what address is DOS stored in RAM while the COM program is executing? Is DOS stored in conventional memory? If so, isn't ...
Flux's user avatar
  • 531

153050per page
close