Questions tagged [retro-computing]

Retro computing refers to the use of outdated hardware platforms (such as the Commodore 64 or BBC Micro), usually for recreational purposes. Programmers interested in retro computing sometimes develop new games for older machines, either as a technical challenge or simply for fun.

Retro computing refers to the use of outdated hardware platforms such as the Commodore 64 or BBC Micro, usually for recreational purposes.

Programmers interested in retro computing sometimes develop new games for older machines, either as a technical challenge (due to the comparatively limited memory and processing power available) or simply just for fun.

Questions on retro computing may also be suitable for Retrocomputing Stack Exchange.

For a more-general concept of outdated hardware/software, see .

57 questions
4
votes
7 answers

What methods for using control flow are there in 6502?

I am trying to understand control flow in 6502 assembly. Say I have the following code: ControlFlow: lda mem cmp #1 bne .sub_one cmp #2 bne .sub_two .sub_one: ; sub routine one goes here jmp…
JohnnyStarr
  • 619
  • 8
  • 21
3
votes
1 answer

ZX81 BASIC to Pygame Conversion of "Dropout" Game

I based the code below on this article: http://kevman3d.blogspot.com/2015/07/basic-games-in-python-1982-would-be.html and on the ZX BASIC in this image: 10 LET P=0 20 LET T=P 30 FOR Z=1 T0 10 35 CLS 37 PRINT AT 12,0;T 40 LET R=INT (RND*17) …
Robin Andrews
  • 3,514
  • 11
  • 43
  • 111
3
votes
1 answer

What type of interpreter were most 8-bit BASIC implementations?

I’m a big fan of early/mid 1980s personal computers like the Amstrad CPC, Commodore 64 and the Sinclair Spectrum. One thing these computers all had was a version of BASIC. As a language hacker myself I’m curious: were these interpreters implemented…
Garry Pettet
  • 8,096
  • 22
  • 65
  • 103
3
votes
3 answers

How can in-memory data structures be pre-initialized for ROM-based programs?

Consider STL's unordered_map. The same template class is used for both hashtables that are generated at runtime, and hashtables comprised of compile-time constant values. While recent versions of C++ add constexpr support it does not extend to more…
Dai
  • 141,631
  • 28
  • 261
  • 374
3
votes
1 answer

Is there a way to access DHR on the Apple 2 from Applesoft Basic

When using Applesoft Basic on the Apple 2 with an 80 column card, is there a way to create DHR graphics using only POKE? I have found a number of solutions using third party extensions such as Beagle Graphics, but I really want to implement it…
Wayne Arthurton
  • 643
  • 1
  • 6
  • 22
3
votes
1 answer

How does an 80386/80287 combination behave in 32-bit mode?

I'm interested in retrocomputing and emulation of old computers and have a question about the 80287: Using a modern FPU the FNSAVE instruction writes 94 bytes of data when the CPU executes 16-bit code and 108 bytes of data when the CPU executes…
Martin Rosenau
  • 17,897
  • 3
  • 19
  • 38
3
votes
1 answer

Are there some references left for the Mac OS Classic runtime?

I'm working on an implementation of the Mac OS Classic runtime to run Classic programs on OS X again. The project includes a PowerPC emulator, a PEF executable linker, and the possibility to call into native (x86) code. The emulator and the linker…
zneak
  • 134,922
  • 42
  • 253
  • 328
3
votes
1 answer

What is the structure of a MPW tool's main symbol?

This question is about Mac OS Classic, which has been obsolete for several years now. I hope someone still knows something about it! I've been building a PEF executable parser for the past few weeks and I've plugged a PowerPC interpreter to it. With…
zneak
  • 134,922
  • 42
  • 253
  • 328
2
votes
2 answers

Reverse Bresenham algorithm? How to convert array of drawn pixels into coordinates

Does there exist an algorithm that can analyze an array of pixel coordinates, and return an array of line coordinates that, when drawn using Bresenham's algorithm, would generate lines that cover the same pixels as the original array? One use case…
2
votes
2 answers

How do labels execute in Assembly?

I am pretty new to assembly, so please go easy on me, but I am confused about labels. I just don't get how they work. Are they like functions, or does one end and the other begins? What I mean by that is say there are 2 labels Label1: ; random…
2
votes
1 answer

Palette quantization for pixel mixing

For graphic modes using a hardware palette, an illusion of more colors can be achieved by quickly switching between two images (I don't know about any generic name for this). What is some algorithm to calculate an optimal (or semi-optimal) palette…
Fabel
  • 1,711
  • 14
  • 36
2
votes
2 answers

Is a "single cycle cpu" possible if asynchronous components are used?

I have heard the term "Single Cycle Cpu" and was trying to understand what single cycle cpu actually meant. Is there a clear agreed definition and consensus and what is means? Some home brew "single cycle cpu's" I've come across seem to use both the…
johnlon
  • 167
  • 1
  • 11
2
votes
3 answers

How do you define an enumeration in 68000 assembly language?

I'm using the assembler that came with the Manx Aztec C compiler (version 5.0) on a Commodore Amiga 500. I want to code the equivalent of the following C code: enum STATUS { STATUS_OKAY, STATUS_WAITING, STATUS_ERROR }; I tried the…
tim.smith
  • 143
  • 7
2
votes
2 answers

How does "self-modified link" work in Pegasus programming?

I've been looking at a simulation of the 1950s 'Pegasus' computer, and come across the term "self-modified link". How does this work?
John White
  • 131
  • 1
  • 3
  • 19
2
votes
1 answer

textcolor() and textbackground() in C

I am having a project using C (the compiler I think I am using is Turbo C++ 3.0). I used some textcolor() and textbackground() functions to color some text. When I run it the first time, the console is in its normal colors—white text on black…
Francis Rubio
  • 175
  • 4
  • 18