Pidp1-mods development log

141 views
Skip to first unread message

Bill E

unread,
Mar 7, 2026, 9:00:19 AMMar 7
to [PiDP-1]
Angelo had a good idea, much more convenient to have one place to see changes.
I have no idea if he intends to merge my changes, but I'll try to track his where appropriate. I will continue to actively support this. As of this post, I've added 22,000 lines of code, both C and assembler, and documentation. (!)

Historical - changes for better audio, dynamic IOTs, high speed channels, lightpen implementation, better hsrdware panel driver, Type 33 Symbol Generator, Type 23 Parallel Drum, BBN clock, Type 630 Data Communications System, new AM1 assembler, new AD1 symbolic source-level debugger, detailed documentation for the above.

7-Mar-26 AD1 convenience updates, simplify changes in the pidp1 code, update docs

Bill E

unread,
Mar 9, 2026, 10:37:02 AMMar 9
to [PiDP-1]
9-Mar-26 More AD1 features, consolidate the intf to pidp-1 into one place in pdp/main.c removing mods to pdp1.c, fix an obscure bug in AM1 when using, deep breath, global symbols in a bank when used with both unqualified and bank-qualified notation in constants when the global is resolved after that use. Related documentation updates. Updates to the AM1 <include> files. And yes, I actually use all of my mods.

Bill E

unread,
Mar 10, 2026, 10:57:34 AMMar 10
to [PiDP-1]
10-Mar-26 merge (most) aap updates to pidp1

Bill E

unread,
Mar 11, 2026, 2:00:20 PMMar 11
to [PiDP-1]
11-Mar-26 all extended features can now be enabled and disabled via the config file, including the -1D extensions,  am1 already warns about -1D instruction uses, added tracking doc, minor ad1 mods for list command

Bill E

unread,
Mar 11, 2026, 8:12:34 PMMar 11
to [PiDP-1]
11-Mar-26 Changed the hash generation for constants in am1 to use 64 bits for symbols instead of 32 to fix a collision problem. Improved single-stepping in ad1.

Bill E

unread,
Mar 12, 2026, 11:04:23 AMMar 12
to [PiDP-1]
SIgh, one more time on the hashing. It actually works in all cases again. Change am1 to have warnings off by default, add more warnings for using am1 features when generating macro1 code, update the docs.

Bill E

unread,
Mar 16, 2026, 10:55:32 AMMar 16
to [PiDP-1]
Major update to the ad1 debugger to fully support debugging with multiple files. This is to handle the am1 assembler's ability to assemble separate files with cross-file symbol resolution, useful for 'library' code that can be shared by multiple programs, etc.

Bill E

unread,
Mar 17, 2026, 5:09:40 PMMar 17
to [PiDP-1]
Another major ad1 update, added tape loading of macro bin and ad1 bin tapes. DDT can do it, now so can ad1. Docs updated.

Bill E

unread,
Mar 19, 2026, 11:41:56 AMMar 19
to [PiDP-1]
Additional 1D instructions scf, sci, iif, ifi, and ida added, can be disabled in config file, new doc added describing them, AM1 updated to include them. Disassembler not yet updated, next update.

Bill E

unread,
Mar 20, 2026, 11:50:16 AMMar 20
to [PiDP-1]
Heuristic added to pdp1.c to distinguish between sdb and dpy origin shift if both are enabled. This also required a change to the lightpen dpy for aperture setting. Reassemble any lightpen rims you have.

Bill E

unread,
Mar 22, 2026, 7:59:07 PMMar 22
to [PiDP-1]
Type 62 added, switch between Type 62 and 64 in config file, add settings in config file
Enhance config code to allow IOTs to pick up settings
Change ad1 to use new decodeInst() method

Bill E

unread,
Mar 23, 2026, 12:43:20 PMMar 23
to [PiDP-1]
Major rework of the IOTs directory and make process to reduce clutter, add the ability to link in libs, and make development easier in general. A new clone will clean everything up, but it's not required. You can also do a git pull then 'make clean' in the IOTs directory, then remove the Logger and Type64printer directories, followed by a 'make'.

Bill E

unread,
Mar 24, 2026, 9:41:45 AMMar 24
to [PiDP-1]
Change the enhanced audio code to still use floating point for filtering, but convert to SDL2 AUDIO_S16 format for output, add more configurability, add queryable diagnostic info, adjust default tuning parameters.

Bill E

unread,
Apr 4, 2026, 10:06:56 AM (6 days ago) Apr 4
to [PiDP-1]
Major rework of disassemble_tape, it is now named disassemble because it can disassemble from tapes or memory or, since it now has a pluggable loader architecture, anything someone wants to write a loader for.
It has 4 loaders now, bin for the usual tape images, am1 for am1 tape images, mem for the pidp-1 coremem file, and kalah for the strange loader it uses. The format of the pidp-1 coremem file was also changed to keep the address and data on one line so it's actually human readable. The disassembler will work with the original and new formats. Sorry, this might seem a gratuitous change but I really had problems trying to read it visually while also looking at a listing file.

Bill E

unread,
Apr 5, 2026, 7:41:47 PM (4 days ago) Apr 5
to [PiDP-1]
The ability to import a symbol file into the disassembler added.
The debugger has two new commands, format to set the output format and trace to follow the target of a memory-accessing instruction including through indirections. The step command now can take a count of the number of single instruction steps to execute.

Bill E

unread,
Apr 9, 2026, 5:16:24 PM (13 hours ago) Apr 9
to [PiDP-1]
General cleanup, there were files for other computers such as the tx0, pdp-10, etc. cluttering up the repo, removed.
Added a configurable pidp-1 execution timing summary, see the config file.
Reworked the disassembler so it now applies a heuristic to try to figure out how locations are used and generate more meaningful labels.
Reply all
Reply to author
Forward
0 new messages