
This is a disassembly of the DEC paper tape basic DEC-11-LPTBA-B-PB
The disassembly was compared to the original DEC listing and
edited to use the corresponding lable names from that listing.

The disassembly is not an exact match. It has additional functions
the listing doesn't have. (PEEK,POKE,FRE,ON)
Code from the original DEC listing was grafted into the disassembly
to handle the conditional assembly options that did not exist in
the original paper tape.

The version numbering doesn't make sense. This basic shows version
001A but it is clearly much later than the 007A paper tape on the 
internet. (DEC-11-AJPB-PB the only other basicpts I've ever seen)

The orginal paper tape was for a PDP11 processor. It included 
HSR,LPT,PF Short error messages and STRINGS. This would not run 
on a LSI11 because of the way the PSW is handled. I have added 
a conditional assembly option ($LSI11) to adapt the code.

$NOPTP supress high speed paper tape
$NOLPT supress line printer 
$NOPOW supress power fail restart
$NOSTR supress strings
$LONGER long error messages
$LSI11 use MTPS/MFPS instructions (not PS@177776)

I'm not able to test them all. I have tested $NOSTR,$LONGER and $LSI11

Included is the original DEC FPMP11 source conditionalized for basic

To assemble a working paper tape basic set the conditionals as desired
most are only in basicl.mac. $NOSTR is in basicl.mac and basich.mac.

Assemble the files.
MACRO BASICL.MAC
MACRO FPMP.MAC
MACRO BASICH.MAC

Link the files
LINK/LDA BASICL,FPMP,BASICH

This will produce the file BASICL.LDA send it to your punch.
COPY BASICL.LDA PC:

Now you have a dec basic paper tape on your punch. Rip it off and
enjoy the magic of the seventies.

If you want to run this in SIMH one more thing.
SIMH sets the PSW to 340 on startup. This code expects the PSW to
be 0 (like the real hardware) So just "DEPOSIT PSW 0" when starting. 


joe lang

joe dot lang dot 0000
at
gmail dot com
