daveorApr 7, 2021Reverse engineering PDP-11 BASIC: Part 26This short post describes TRAP 116 and the BASIC RUN, STOP, END and RANDOMIZE commands. For context and a list of other posts on this...
daveorApr 6, 2021Reverse engineering PDP-11 BASIC: Part 25This post describes the BASIC FOR and NEXT loop commands. For context and a list of other posts on this topic, see the PDP-11 BASIC...
daveorMar 27, 2021Reverse engineering PDP-11 BASIC: Part 24This post describes the BASIC READ, INPUT and RESTORE commands. For context and a list of other posts on this topic, see the PDP-11 BASIC...
daveorMar 22, 2021Reverse engineering PDP-11 BASIC: Part 23This post describes the BASIC IF command. For context and a list of other posts on this topic, see the PDP-11 BASIC reverse engineering...
daveorMar 21, 2021Reverse engineering PDP-11 BASIC: Part 22This post will describe the operation of TRAP 124 and the BASIC DIM and LET commands. For completeness, I'll also describe the DATA and...
daveorMar 18, 2021Reverse engineering PDP-11 BASIC: Part 21In this post we'll look at the expression evaluation code. Expressions are used all over the place and the main entry point to parsing...
daveorMar 18, 2021Reverse engineering PDP-11 BASIC: Part 20This post will describe the operation of a few TRAPs that are used to support the functionality that will be analysed in the next posts....
daveorMar 3, 2021Reverse engineering PDP-11 BASIC: Part 19In this post I'll describe user-defined functions and the BASIC DEF command, starting with some TRAPs that support its operation (TRAP...
daveorMar 2, 2021Reverse engineering PDP-11 BASIC: Part 18This post will describe the operation of the ASCII-to-floating point conversion code, TRAP 6. You will need to have read Part 14, Part...
daveorMar 1, 2021Reverse engineering PDP-11 BASIC: Part 17This post will take a look at some more floating point manipulation TRAPs; TRAP 26 (floating point division) and TRAP 34 (floating point...
daveorFeb 27, 2021Reverse engineering PDP-11 BASIC: Part 16This post is about multiplication. There are three different multiplication TRAPs found in the PDP-11 BASIC code, with a different one...
daveorFeb 24, 2021Reverse engineering PDP-11 BASIC: Part 15This post will examine some of the floating point operations. We'll be looking at TRAP 24 (negate a floating point number), TRAP 20 (add...
daveorFeb 22, 2021Reverse engineering PDP-11 BASIC: Part 14In this post I'm going to start the analysis of the floating point number code. I will be looking at the PDP-11 BASIC representation of...
daveorFeb 15, 2021Reverse engineering PDP-11 BASIC: Part 13Update 1st March 2021: This post has been updated to reflect refined understanding of TRAP 64 arising from analysis of the floating point...
daveorFeb 10, 2021Reverse engineering PDP-11 BASIC: Part 12In this post I'll describe some of the BASIC commands that use runtime state storage, including GOSUB, GOTO and RETURN. For context and a...
daveorFeb 9, 2021Reverse engineering PDP-11 BASIC: Part 11This posts begins the analysis of the BASIC program's runtime state management. I'll start with a quick introduction to how the runtime...
daveorFeb 8, 2021Reverse engineering PDP-11 BASIC: Part 10In this post I'll be looking at how the SAVE, OLD and DELETE BASIC commands work. For context and a list of other posts on this topic,...
daveorFeb 5, 2021Reverse engineering PDP-11 BASIC: Part 9In this post I'll be looking at how the BASIC LIST command works. For context and a list of other posts on this topic, see the PDP-11...
daveorFeb 3, 2021Reverse engineering PDP-11 BASIC: Part 8In Part 6 I analysed the code that: Determined whether the user has pressed return, in which case control returns to the beginning of the...
daveorFeb 2, 2021Reverse engineering PDP-11 BASIC: Part 7The purpose of this post is to lay the groundwork required to complete the analysis of the main syntax parsing loop. There are a few...