1

Were there any games/software that used memory beyond what was advertised as available to BASIC on the machine ?

  • On home / personal computers any time before 1984 .
  • Without needing to plug in any additional hardware .

How common was it on home / personal computers of this era that assembly-code or BASIC could access more memory than what was advertised as available to BASIC on the machine (e.g. like storing non-video data on video-memory)?

Was there any other type of RAM that was normally not accessible to BASIC?

Added To Question
If a machine had 24k RAM, and only 18k of that available to BASIC, was that 8k empty, or, on any existing machines, was anything ( other than assembly-code which could use all of the 24k ) stored on there, if anything was stored on there, exactly why was it stored there .

An example, may be for the Bally Astrocade, using video memory, although I don't know any details / games / software .

  • 1
    Define unknown :) – Raffzahn Nov 16 '19 at 18:50
  • 1
    @questiontype - I'm not sure many average users knew about memory addresses. Average users played games or ran word processors. I was an MS-DOS/Windows user from about 1991-1995, wrote some programs too, but really had no idea of memory address ranges. Before that, on the Amiga, the only address I needed was 4, the pointer to the dos library. Everything else was nebulous. Before that, on the Amstrad CPC, I knew the memory map fairly well, but everything was below $ffff on a 64 K machine. Maybe some more clarification before the unclear/too broad close votes pile on? – scruss Nov 16 '19 at 19:07
  • 1
    @Thorbjørn Sure, but that couldn't be considered anything unknown to developers; this exact technique was documented by Commodore themselves on page 261 of the Commodore 64 Programmers Reference Guide. – cjs Nov 16 '19 at 19:51
  • 1
    @questiontype Write a new question instead. – Thorbjørn Ravn Andersen Nov 16 '19 at 20:38
  • 1
    Please don't make more work for other people by vandalizing your posts. By posting on the Stack Exchange (SE) network, you've granted a non-revocable right, under the CC BY-SA 4.0 license for SE to distribute that content. By SE policy, any vandalism will be reverted. If you want to know more about deleting a post, consider taking a look at: How does deleting work? – Glorfindel Nov 16 '19 at 20:45
6

The Commodore 64 advertises 38911 bytes free for BASIC upon startup. It's a 64kb machine. Non-BASIC programs could use the full 64kb rather than the ~38kb. Therefore using more memory than is available to BASIC was routine.

The difference was primarily that BASIC and the rest of the kernel don't need to be present, so if you're not using them then you can have some RAM instead.

| improve this answer | |
3

Answers for the Apple II:

(Please have a look at this answer to understand the memory layout, and where the areas used by BASIC are placed).

1) Were there any games/software that used memory beyond what was advertised as available to BASIC on the machine?

Assuming that "advertised as available to BASIC" means "between $801 and DOS", then yes, machine code programs (games) would regularly use other free areas. In some cases they'd even overwrite DOS, making a reboot after the end of the program necessary. There were even BASIC programs which manipulated the memory layout of the BASIC areas themselves, for various reasons (for example, to have machine code subroutines as BASIC extensions).

2) How common was it on home / personal computers of this era that assembly-code or BASIC could access more memory than what was advertised as available to BASIC on the machine

See above, very common.

(e.g. like storing non-video data on video-memory)?

Actually, just having a lot of BASIC program code could already put BASIC code into video-memory, prohibiting the use of graphics (and it happened in practice).

3) Was there any other type of RAM that was normally not accessible to BASIC?

Yes, RAM in the so-called "language card", which was in the same place as ROM. A few games used that (e.g. Zork and other Infocom games), as well as non-DOS systems (UCSD Pascal).

| improve this answer | |
2

For nearly all machines with BASIC, I would expect any non-BASIC programs to use BASIC's workspace. Also, people (inc me) would not allow the OS to get a look-in and use its memory too ;)

| improve this answer | |

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.