PiDP-8/I Software

Changes To A Field Guide to PDP-8 Assemblers
Log In

Changes to "A Field Guide to PDP-8 Assemblers" between 2017-12-18 08:11:51 and 2017-12-18 08:31:51

382
383
384
385
386
387
388
389



390
391
392
393
394
395

396




397


398
399
400
401
402
403
404
382
383
384
385
386
387
388

389
390
391
392
393
394
395
396

397
398
399
400
401
402

403
404
405
406
407
408
409
410
411







-
+
+
+





-
+

+
+
+
+
-
+
+








| **Introduced** | 1996
| **Manual** | [man page](http://manpages.ubuntu.com/manpages/artful/man1/palbart.1.html)
| **Delivery** | Internet, PiDP-8/I project

`palbart` is a popular fork of the `pal.c` assembler by [Douglas W. Jones](http://homepage.divms.uiowa.edu/~jones/) and Rich Coon, originally spun off by Gary A. Messenbrink — and later enhanced by several others — to support the fleet of PDP-8/e computers in the [Bay Area Rapid Transit](https://en.wikipedia.org/wiki/Bay_Area_Rapid_Transit) system; thus the name.

The PiDP-8/I software distribution includes a version calling itself "pal-2.13, 03 May 2015." If you place a `*.pal` file in either the `asm` or `examples` subdirectories of the software distribution, then type `make`, the build system will find your file and generate several output files named after it:
The PiDP-8/I software distribution includes a version calling itself "pal-2.13, 03 May 2015." 

If you place a `*.pal` file in either the `src/asm` or `examples` subdirectories of the software distribution, then type `make`, the build system will find your file and generate several output files named after it:

*   **<code>obj/*.lst</code>** — the assembler's text listing output, giving the assembled machine code alongside the source code, plus any error messages
*   **<code>bin/*.pt</code>** — the machine code output in RIM paper tape format, suitable for loading into SIMH's PDP-8 simulator
*   **<code>boot/*.script</code>** — a SIMH init script that deposits the machine code into the PDP-8 simulator's core memory and starts it running; pass the file name to `bin/pidp8i-sim`

This makes for a very smooth code-build-run-debug cycle!
This makes for a very smooth code-build-run-debug cycle:

1.  Edit `examples/myprg.pal`
2.  Run `make`
3.  Run `bin/pidp8i-sim boot/myprog.script`
4.  Debug; if still buggy, goto step 1.
At this time, we do not yet have a comprehensive list of differences relative to PAL-III or PAL8.

There are differences in `palbart` that make it somewhat incompatible with the PAL family assemblers above. The most likely to affect existing programs is that `palbart` does not chop symbols off at 6 characters. Some code depends on this happening; for example, the assembled code may refer to a label with 7+ characters in one location and with 6 in another location, and expect the assembler to refer to the same location in both places.

**INCOMPLETE**


## <a id="pdpnasm"></a>pdpnasm

| **Introduced** | 2006