PiDP-8/I Software

All files named "examples/pep001.pal"
Log In

Many hyperlinks are disabled.
Use anonymous login to enable hyperlinks.

History for examples/pep001.pal

Set 8th bit on the ASCIIZ strings in pep001.pal, in case it's used with a terminal that cares about this, such as an ASR-33. file: [ddf138fe93] check-in: [397c6d8901] user: tangent branch: trunk, size: 7520
The pep001.pal program could hang in the TSF loop on writing the initial "ANSWER: " leader if the terminal device isn't prepared to receive characters. Added a "TLS" to send a null character to kick things off. This eats up the one remaining word left in PAGE 1! file: [59b284e901] check-in: [15e91ae82b] user: tangent branch: trunk, size: 7516
Many more software licenses chased down and added to the appropriate files. Where direct editing was not possible, created license files nearby, and pointed to them from a new file. file: [17ad53a82e] check-in: [fc7e5f2a91] user: tangent branch: trunk, size: 7414
Got rid of STMAX as a separate constant, since it suffices to just reuse MAX, with the understanding that MAX < 1024 now, so that the subtotal rollover point is <= 1024. A separate constant makes sense when MAX is much smaller than STMAX, but they're so close now it's pointless have both. file: [9ee369de8b] check-in: [8dea8cc325] user: tangent branch: pep001.pal-stripped-ascii, size: 7212
Dropped an unnecessary CLL in SAPRT: we aren't rotating bits any more, so we don't care if the link is set. file: [7877b1a5a9] check-in: [15e5c13878] user: tangent branch: pep001.pal-stripped-ascii, size: 7219
Moved the SANEXT label down an instruction: it was on a redundant instruction with respect to the next iteration of that loop. file: [183bde1ab5] check-in: [9b1e789139] user: tangent branch: pep001.pal-stripped-ascii, size: 7223
Squeezed two more words from SAPRT by using the PDP-8/E's SWP instruction instead of two RTR's, and using the MQ for storage instead of a named core location for temporary storage. file: [66139430de] check-in: [b1903a5e57] user: tangent branch: pep001.pal-stripped-ascii, size: 7223
Rewrote PRINTS in pep001.pal to accept a subset of the "stripped ASCII" encoding produced by the assembler for TEXT directives. It is untested, and so far, it's 8 instructions longer than the ASCIIZ implementation, so I don't want to commit it as the main version even if it does work. I'm saving it as a branch in case it's useful later, and possibly someone will find a way to bum those 8 extra instructions back out. file: [9ea62b0684] check-in: [80fe276c70] user: tangent branch: pep001.pal-stripped-ascii, size: 7115
Replaced the space at the end of the "ANSWER: " string constant since the previous checkin bought us two instructions at the end of page 1. file: [d055a9c4e5] check-in: [e1e4f9fbe7] user: tangent branch: release, size: 6069
Dropped two unnecessary CLAs from examples/pep001.pal: DECPRT leaves AC = 0 and SHOWST calls that at its tail end, so removed the CLAs following the two calls to SHOWST. (Patch by Rick Murphy.) file: [21739ccdd5] check-in: [a9330964a2] user: tangent branch: release, size: 6066
Cosmetic improvements to examples/pep001.pal file: [b8ee10e070] check-in: [283e4497fa] user: tangent branch: release, size: 5970
Fixed an inverted bit test in the recently-optimized pep001.pal that caused it to skip a jump when it should jump and jump when it should skip. Fix by Rick Murphy. file: [3bb7dbb7cd] check-in: [4b82ef7208] user: tangent branch: release, size: 5955
Merged Rick Murphy's optimizations to examples/pep001.pal. Source: file: [ca5bd1f94e] check-in: [61ddd701e5] user: tangent branch: release, size: 5955
Removed some unnecessary instruction definitions at the top of examples/pep001.pal. (Things I defined during development but ended up not using in the final version.) file: [a3e04a6873] check-in: [d736d3fccf] user: tangent branch: trunk, size: 5472
First version of PEP001 that seems to 100% answer the question as asked, rather than subsets of the problem. It required a new subtotalling mechanism and a lot of new I/O. (Still at least one check to be done.) file: [ca49f42496] check-in: [976f6cbda2] user: tangent branch: project-euler, size: 5620
Fixed problems with decimal print routine. Routine itself was fine, but the terminal had to be made ready manually. Also added a CRLF after the value, broke program shutdown up into subroutines, and made OS/8 vs. HLT program ending conditional based on whether we're running under OS/8 or not. file: [cbed1f1c78] check-in: [bec3faac16] user: tangent branch: project-euler, size: 4769
Finally got a version of the PEP 1 program to give the correct value for N < 10. Now to fix the decimal number printing routine. file: [c72bdb4553] check-in: [16a63487eb] user: tangent branch: project-euler, size: 3871
More tweaks to the Project Euler problem 1 solution file: [8d2317316f] check-in: [43184c3357] user: tangent branch: project-euler, size: 4289
Fixed assorted problems in the pep001 attempt. Still broken, but at least part of the problem appears to be the DECPRT routine, so I'm checking my progress in separately so I can chase that. file: [3172ea8f51] check-in: [2cc1518a3f] user: tangent branch: project-euler, size: 4317
Added: First attempt at solving a Project Euler problem in PAL8 assembly language. It's not entirely working, but I need the checkpoint, so it's going in on a branch. file: [0ff93ba096] check-in: [5eefa878d6] user: tangent branch: project-euler, size: 3983