![]() | This article is rated Start-class on Wikipedia's
content assessment scale. It is of interest to the following WikiProjects: | |||||||||||||
|
In doing some research for improving the CPU power consumption article (which is currently quite poor), I've come across several figures for the power consumption of various PDP-8 models. Anyone think this information would be interesting to include here, or an unneccessary aside? -- uberpenguin 16:51, 20 October 2005 (UTC)
Sounds like a case of bad memory to me. But he did say "if i remember correctly" (or something like that). I guess he didn't... RTC 06:55 Nov 5, 2002 (UTC)
I have a problem with this article. There's a lot of technical language that is not explained. What is a "word of memory", for instance?
I've now defined what a word of memory is, and will go back and re-read the entire article as time permits. In the best Wikipedia fashion, everyone else, of course, is also welcome to pitch in!
Atlant 13:14, 6 Dec 2004 (UTC)
Another comment (I made the first observation, above). I recently took a course in Technical Communication, and would like to try and make this article more accessible to readers without a technical background. I'm going to detail the whole process in this discussion area, so editors know what I'm doing and why I'm doing it.
My intent is not to delete any information already present, but to break it down into chunks for more specific audiences. A high school student doing a report about the history of computing should find this article as useful as an antique computing enthusiast looking for an example of assembly code.
--JonBuck
JonBuck, I think that the Wikipedia tradition is that you don't need to convince any of us about why you're doing it as long as you're doing it right. None of us "own" the PDP-8 page, and we'll all appreciate attempts to improve it. (See Wikipedia:Be bold in updating pages.) And if you manage to put some technical fact askew, we'll all manage to get it fixed.
By the way, you can "sign" your name to talk pages by typing three tildes in succession (but with no intervening spaces): ~ ~ ~. Four tildes will sign your name and the current timestamp.
Atlant 13:55, 7 Dec 2004 (UTC)
Okay, I've re-read the article (and expanded on a few things), but I don't see where it needs a lot of jargon explained. Remember, the idea here is that we don't need to explain everything "in place" as long as everything is suitably hyper-linked to an explanation. For example, we don't need to explain core memory, just ensure that it's hyperlinked to an article that does explain it.
Obviously, you're free to disagree with me, but please read and edit the article with that in mind.
Atlant 18:00, 7 Dec 2004 (UTC)
As an old-timer, I'd like to point out that we always referred to a byte as half of a word, regardless of the word size. Thus, within the context of the PDP-8, maximum memory would be 32k words or 64k 6-bit bytes. Would anyone object to a minor change indicating 8-bit bytes for the 48k figure in the article? Grumpyoldgeek 23:05, 11 November 2005 (UTC)
——-
As another old-timer that used a PDP-8/L we certainly had 2 bytes per word. . There is a byte swap instruction in the instruction set. However, they weren’t always half words. When the 8080 chip came out, 8 bit bytes were the word size then, so for a while a byte and a word were the same thing on the 8080. When the 8086 came out with 16 bit words the universe became right again and two 8 bit bytes were one word in the 8080/8086 world. On the CDC 6400 which I used next in my life we had 15 and 30 bit instructions and also packed 10 6 bit characters in a word. So there we also didn’t talk much about bytes, since we used 6 bit, 15 bit, 30 bit entities and byte wouldn’t have made much sense. Historically, a byte is 6 or 8 bits for 12 bit and 16 bit word architectures. The usage of a byte as a smaller part of a word was endearing as a small bite of a word was called a byte. Kd4ttc ( talk) 02:55, 13 November 2020 (UTC)
It's been a while (31 years, to be precise, so I'd like confirmation of this before I change it).
The code looks wrong to me. Specifically, the TAD (DATA-1).
The TAD instruction grabs the data AT the location specified. To get the address of the data being referenced, you'd need to grab data that references it directly. Doing a TAD (DATA-1) would appear, to me, to be getting the INSTRUCTION that happens to be just before the location tagged with "DATA" in the assembler code.
My proposed change:
HELLO, CLA CLL / Clear the AC and the Link bit TAD DADDR
... ...
DADDR, . DATA, "H / A well-known message "e /
I'd like to know people's thoughts on this, but I'm pretty sure I'm right.
PKtm
15:24, 30 September 2005 (UTC)
I found a few other suspicious-looking parts in the examples. DATAS -> DATA for one. Could some please review the code lines containing JMS I .*? bkil ( talk) 23:41, 19 January 2008 (UTC)
Does anybody happen to know what a typical clock period for a PDP-8 as generated by one of the RC oscillator flip chips (like this one) was? I can't find any docs on this specific. -- uberpenguin 04:30, 15 October 2005 (UTC)
The second para of the Data General history section says that many PDP-8s still operate today. Is this still true? If so, it would be worthy of a mention in this article. If not, the DG article needs to change.- gadfium 21:12, 26 December 2005 (UTC)
Does anyone know the list price of the PDP-8 in 1965 dollars? How did the price change through the 1970's? ( kradak ( talk) 17:41, 13 May 2011 (UTC))
I found this in Bell and Newell. Since I am an old guy I actually had to use a PDP-8 while in grad school (mid '70's). We were forced to use it in the same course that used Bell and Newell. All that is said in the article is true. You really did have to flip switches to input programs. And the little incandescent lights danced across the front panel; there you hoped to find your "output". A hundred students had to sign up in 15 minute slots to use the damn thing. It was a great day when we were allowed to use the tape reader.
MQ <0:11> is where to find/put the multiplier quotient
SC <0:4> is the Shift Counter
The instruction set of this beast:
There are a few more specifics around the registers, overflow, logic etc. in Bell and Newell. wvbailey Wvbailey 18:24, 23 October 2006 (UTC)
Does anyone have information about PDP-8 auto incrementing memory locations? I remember them as an alternative to having an index register. jmcw 15:14, 9 July 2007 (UTC)
I removed the pair of sections debating the PDP-8's legacy in terms of accumulators. Accumulators have been around since the dawn of computing. See the 1947 quote in the accumulator article history section. ENIAC had 20 accumulators; the IBM 701 series had a single accumulator. The entire contents is unsourced WP:Original research (The one source given is a mirror of the Wikipedia Digital Equipment Corporation article!). -- agr ( talk) 11:37, 14 April 2008 (UTC)
I have a question on the memory management unit (I forget its name ...) and interrupts. On the event of a interrupt, is the instruction field (is that what it's called? the x86 equivalent is the codesegment I suppose) set to zero so that the effective call is to location 0000 in field 0? Wilsonsamm ( talk) 03:21, 22 November 2008 (UTC)
I think there is an error in the Description section, mentioning that extended memory was only available in "PDP-8E and later verions". I worked with a PDP-8 in 1969 that had two banks of 4,096 words and had the front panel lights and switches, as well. This predated the PDP-8E. I would suppose the original PDP-8 had extended memory as an option
I added a "citation needed" markup at the end of the Virtualization section, not to dispute claims about the bulletproof way to deal with code between CIF and JMP/JMS I, but to elicit a useful reference. The timesharing OS TSS/8 would have had to deal with this issue iff it gave users more than 4k of memory, which it didn't. I'd love to hear which programs actually did this instruction emulation, and to see the emulator code. While relatively easy to emulate a PDP-8, it's hardly trivial. ( --Tim McNerney ( talk) 04:46, 11 February 2016 (UTC))
The article is wrong in that it claims the new extended memory on the 8/A used the accumulator instead of instructions to address the memory fields. In reality, you still used the instructions. The CDF/CIF instructions were extended with two more bits, and slightly altered, in order to address up to 40(8) fields, instead of the 10(8) fields in the original design. /bqt@softjar.se 178.83.31.218 ( talk) 10:02, 31 October 2010 (UTC)
The BSW instruction needs to be corrected a little. BSW was first available on the 8/E, and is not available on earlier machines. The opcode is 7002 though (setting the rotate two bits, without setting any of the rotate direction bits, which previously was pointless). /bqt@softjar.se 178.83.31.218 ( talk) 10:13, 31 October 2010 (UTC)
Did all PDP-8's have those two registers, or were they only in some implementations? Should the "register set" diagrams include non-architected, non-programmer-visible (even to the OS programmer) registers only present in some implementations? Guy Harris ( talk) 05:52, 22 October 2013 (UTC)
Enthusiasts have created entire PDP-8s using single FPGA devices. makes it sound surprising that the PDP-8 would fit in an FPGA, but today the Cray-1 fits in an FPGA that isn't even the high-end FPGA family. Specifically, it fits in the Xilinx Spartan 3E-1600. (I have to actually try this out someday.) Gah4 ( talk) 20:52, 19 September 2016 (UTC)
Some of this article seems to be past tense, I believe contradicting MOS:TENSE. The PDP-8 architecture still exists, and descriptions of it should be present tense. Many machines still exist, also reasonably described in present tense. Events, such as the introduction, sale, prices, or changes to the architecture should be past tense. JEH seems to disagree with me on this. Not that I am ever sure that all my changes are correct, but I believe that most are, and are going in the direction indicated in MOS:TENSE. I would appreciate specific comments on the reverted changes. Gah4 ( talk) 21:03, 19 September 2016 (UTC)
By default, write all articles in the present tense, including for those covering products or works that have been discontinued. PDP-8/S serial 123 (most likely) was built by DEC years ago, and no longer exists. The long discontinued PDP-8/S is an implementation of the PDP-8 architecture that was designed and built by DEC. Yes, I try to get the actions, such as designed, built, planned, thought about, in the past tense. Details that don't have an action, the number of register for example, should be present, though the decision to build a 12 bit machine is past. Thanks all for helping get this right. Gah4 ( talk) 00:19, 20 September 2016 (UTC)
I have reverted, as I believe most satisfy "By default, write all articles in the present tense, including for those covering products or works that have been discontinued." If someone believes that some edits don't satisfy that, please change just those. There is a limit to the size of the reason for edit box, so I couldn't say it all there. As above, I ask myself if the statement is still true, and write it present tense if it is. Note that many stay past, as that makes more sense. I will double check them myself. Thanks all. Gah4 ( talk) 05:51, 20 September 2016 (UTC)
The inflation template seems to follow a consumer price index. I wonder (without stating one way of the other) if that is right for the PDP-8? Gah4 ( talk) 02:08, 2 November 2016 (UTC)
This template is only capable of inflating Consumer Price Index values: staples, workers' rent, small service bills (doctor's costs, train tickets). This template is incapable of inflating capital expenses, government expenses, or the personal wealth and expenditure of the rich. Incorrect use of this template would constitute original research. If you yourself do not have economic training, then please consult someone who does before using this template.
Personally, I think that the PDP-8 should be considered a personal computer. (Only one person normally uses it at a time.) I am not sure where we are supposed to find someone with economic and computer training. Gah4 ( talk) 03:53, 2 November 2016 (UTC)
The 1967 DEC Small Computer Handbook dealt with the PDP-8 as well as the PDP-8/S; it doesn't suggest, anywhere that I can see, that the "S" in "PDP-8/S" stands for "small", and, as it includes the PDP-8 non-/S, it indicates that the PDP-8 non/S is also a "small" computer. Guy Harris ( talk) 08:02, 16 November 2018 (UTC)
The code examples are of exceptionally poor quality, as are the subjective, and misguided, remarks about the supposed limitations of the -8. The code for PUSH and POP is extremely poor, and not representative of how one programs the -8. This is an ideal case for the auto-increment registers; one does not do the sort of AC hacking illustrated here. Moreover, it is quite typical to exploit field boundaries and wrap-arounds when dealing with issues such as overflow, which is not even checked in the illustrated code. Furthermore, it is a small matter to implement PDP-10-style PUSHJ/POPJ for recursive subroutines, and it is false that JMS leads to the kinds of bugs alleged here. The remark about a "skip chain" is telling: no competent -8 programmer would ever use a skip chain for processing interrupts. Instead one uses a "jump chain", which employs no SKP instructions at all. I believe it was either The Small Computer Handbook or Introduction to Programming that illustrated the "skip chain" method, and perhaps the remark is taken from there. Robert Harper ( talk) 02:32, 6 May 2021 (UTC)
First, I am an expert on the PDP-8; I used to make my living programming it. I am not incorrect about any technical point.
You describe a "skip chain", which is not used in any serious code. In. "jump chain", ie "jmp chain," there are NO wasteful SKP instructions. You write, "TSF; JMP NOTTTY; KSF; JMP NOTKBD; Etc", rather than the idiotic "TSF; SKP; JMP ITSTTY; KSF; SKP; JMP ITSKBD; Etc". Look at Richard Lary's "Toy", which turned into RTS-8, if you want to learn how to write -8 code.
Second, there is a standard package for PUSHJ/POPJ, whose coding is elegant, unlike what is suggested here as exemplary (and then blamed on the -8 throughout). There has never been a bug in any serious code caused by someone thinking that JMS supports recursion, which it did not and should not do. After all, the -8 was the first RISC, and, unfortunately for them, DEC killed itself by scrapping that and thinking that the idea of a computer is to be a high-level programming language, a CISC, of which the VAX became the laughing stock example. — Preceding unsigned comment added by RobertWHarper ( talk • contribs) 14:19, 9 May 2021 (UTC)
![]() | This article is rated Start-class on Wikipedia's
content assessment scale. It is of interest to the following WikiProjects: | |||||||||||||
|
In doing some research for improving the CPU power consumption article (which is currently quite poor), I've come across several figures for the power consumption of various PDP-8 models. Anyone think this information would be interesting to include here, or an unneccessary aside? -- uberpenguin 16:51, 20 October 2005 (UTC)
Sounds like a case of bad memory to me. But he did say "if i remember correctly" (or something like that). I guess he didn't... RTC 06:55 Nov 5, 2002 (UTC)
I have a problem with this article. There's a lot of technical language that is not explained. What is a "word of memory", for instance?
I've now defined what a word of memory is, and will go back and re-read the entire article as time permits. In the best Wikipedia fashion, everyone else, of course, is also welcome to pitch in!
Atlant 13:14, 6 Dec 2004 (UTC)
Another comment (I made the first observation, above). I recently took a course in Technical Communication, and would like to try and make this article more accessible to readers without a technical background. I'm going to detail the whole process in this discussion area, so editors know what I'm doing and why I'm doing it.
My intent is not to delete any information already present, but to break it down into chunks for more specific audiences. A high school student doing a report about the history of computing should find this article as useful as an antique computing enthusiast looking for an example of assembly code.
--JonBuck
JonBuck, I think that the Wikipedia tradition is that you don't need to convince any of us about why you're doing it as long as you're doing it right. None of us "own" the PDP-8 page, and we'll all appreciate attempts to improve it. (See Wikipedia:Be bold in updating pages.) And if you manage to put some technical fact askew, we'll all manage to get it fixed.
By the way, you can "sign" your name to talk pages by typing three tildes in succession (but with no intervening spaces): ~ ~ ~. Four tildes will sign your name and the current timestamp.
Atlant 13:55, 7 Dec 2004 (UTC)
Okay, I've re-read the article (and expanded on a few things), but I don't see where it needs a lot of jargon explained. Remember, the idea here is that we don't need to explain everything "in place" as long as everything is suitably hyper-linked to an explanation. For example, we don't need to explain core memory, just ensure that it's hyperlinked to an article that does explain it.
Obviously, you're free to disagree with me, but please read and edit the article with that in mind.
Atlant 18:00, 7 Dec 2004 (UTC)
As an old-timer, I'd like to point out that we always referred to a byte as half of a word, regardless of the word size. Thus, within the context of the PDP-8, maximum memory would be 32k words or 64k 6-bit bytes. Would anyone object to a minor change indicating 8-bit bytes for the 48k figure in the article? Grumpyoldgeek 23:05, 11 November 2005 (UTC)
——-
As another old-timer that used a PDP-8/L we certainly had 2 bytes per word. . There is a byte swap instruction in the instruction set. However, they weren’t always half words. When the 8080 chip came out, 8 bit bytes were the word size then, so for a while a byte and a word were the same thing on the 8080. When the 8086 came out with 16 bit words the universe became right again and two 8 bit bytes were one word in the 8080/8086 world. On the CDC 6400 which I used next in my life we had 15 and 30 bit instructions and also packed 10 6 bit characters in a word. So there we also didn’t talk much about bytes, since we used 6 bit, 15 bit, 30 bit entities and byte wouldn’t have made much sense. Historically, a byte is 6 or 8 bits for 12 bit and 16 bit word architectures. The usage of a byte as a smaller part of a word was endearing as a small bite of a word was called a byte. Kd4ttc ( talk) 02:55, 13 November 2020 (UTC)
It's been a while (31 years, to be precise, so I'd like confirmation of this before I change it).
The code looks wrong to me. Specifically, the TAD (DATA-1).
The TAD instruction grabs the data AT the location specified. To get the address of the data being referenced, you'd need to grab data that references it directly. Doing a TAD (DATA-1) would appear, to me, to be getting the INSTRUCTION that happens to be just before the location tagged with "DATA" in the assembler code.
My proposed change:
HELLO, CLA CLL / Clear the AC and the Link bit TAD DADDR
... ...
DADDR, . DATA, "H / A well-known message "e /
I'd like to know people's thoughts on this, but I'm pretty sure I'm right.
PKtm
15:24, 30 September 2005 (UTC)
I found a few other suspicious-looking parts in the examples. DATAS -> DATA for one. Could some please review the code lines containing JMS I .*? bkil ( talk) 23:41, 19 January 2008 (UTC)
Does anybody happen to know what a typical clock period for a PDP-8 as generated by one of the RC oscillator flip chips (like this one) was? I can't find any docs on this specific. -- uberpenguin 04:30, 15 October 2005 (UTC)
The second para of the Data General history section says that many PDP-8s still operate today. Is this still true? If so, it would be worthy of a mention in this article. If not, the DG article needs to change.- gadfium 21:12, 26 December 2005 (UTC)
Does anyone know the list price of the PDP-8 in 1965 dollars? How did the price change through the 1970's? ( kradak ( talk) 17:41, 13 May 2011 (UTC))
I found this in Bell and Newell. Since I am an old guy I actually had to use a PDP-8 while in grad school (mid '70's). We were forced to use it in the same course that used Bell and Newell. All that is said in the article is true. You really did have to flip switches to input programs. And the little incandescent lights danced across the front panel; there you hoped to find your "output". A hundred students had to sign up in 15 minute slots to use the damn thing. It was a great day when we were allowed to use the tape reader.
MQ <0:11> is where to find/put the multiplier quotient
SC <0:4> is the Shift Counter
The instruction set of this beast:
There are a few more specifics around the registers, overflow, logic etc. in Bell and Newell. wvbailey Wvbailey 18:24, 23 October 2006 (UTC)
Does anyone have information about PDP-8 auto incrementing memory locations? I remember them as an alternative to having an index register. jmcw 15:14, 9 July 2007 (UTC)
I removed the pair of sections debating the PDP-8's legacy in terms of accumulators. Accumulators have been around since the dawn of computing. See the 1947 quote in the accumulator article history section. ENIAC had 20 accumulators; the IBM 701 series had a single accumulator. The entire contents is unsourced WP:Original research (The one source given is a mirror of the Wikipedia Digital Equipment Corporation article!). -- agr ( talk) 11:37, 14 April 2008 (UTC)
I have a question on the memory management unit (I forget its name ...) and interrupts. On the event of a interrupt, is the instruction field (is that what it's called? the x86 equivalent is the codesegment I suppose) set to zero so that the effective call is to location 0000 in field 0? Wilsonsamm ( talk) 03:21, 22 November 2008 (UTC)
I think there is an error in the Description section, mentioning that extended memory was only available in "PDP-8E and later verions". I worked with a PDP-8 in 1969 that had two banks of 4,096 words and had the front panel lights and switches, as well. This predated the PDP-8E. I would suppose the original PDP-8 had extended memory as an option
I added a "citation needed" markup at the end of the Virtualization section, not to dispute claims about the bulletproof way to deal with code between CIF and JMP/JMS I, but to elicit a useful reference. The timesharing OS TSS/8 would have had to deal with this issue iff it gave users more than 4k of memory, which it didn't. I'd love to hear which programs actually did this instruction emulation, and to see the emulator code. While relatively easy to emulate a PDP-8, it's hardly trivial. ( --Tim McNerney ( talk) 04:46, 11 February 2016 (UTC))
The article is wrong in that it claims the new extended memory on the 8/A used the accumulator instead of instructions to address the memory fields. In reality, you still used the instructions. The CDF/CIF instructions were extended with two more bits, and slightly altered, in order to address up to 40(8) fields, instead of the 10(8) fields in the original design. /bqt@softjar.se 178.83.31.218 ( talk) 10:02, 31 October 2010 (UTC)
The BSW instruction needs to be corrected a little. BSW was first available on the 8/E, and is not available on earlier machines. The opcode is 7002 though (setting the rotate two bits, without setting any of the rotate direction bits, which previously was pointless). /bqt@softjar.se 178.83.31.218 ( talk) 10:13, 31 October 2010 (UTC)
Did all PDP-8's have those two registers, or were they only in some implementations? Should the "register set" diagrams include non-architected, non-programmer-visible (even to the OS programmer) registers only present in some implementations? Guy Harris ( talk) 05:52, 22 October 2013 (UTC)
Enthusiasts have created entire PDP-8s using single FPGA devices. makes it sound surprising that the PDP-8 would fit in an FPGA, but today the Cray-1 fits in an FPGA that isn't even the high-end FPGA family. Specifically, it fits in the Xilinx Spartan 3E-1600. (I have to actually try this out someday.) Gah4 ( talk) 20:52, 19 September 2016 (UTC)
Some of this article seems to be past tense, I believe contradicting MOS:TENSE. The PDP-8 architecture still exists, and descriptions of it should be present tense. Many machines still exist, also reasonably described in present tense. Events, such as the introduction, sale, prices, or changes to the architecture should be past tense. JEH seems to disagree with me on this. Not that I am ever sure that all my changes are correct, but I believe that most are, and are going in the direction indicated in MOS:TENSE. I would appreciate specific comments on the reverted changes. Gah4 ( talk) 21:03, 19 September 2016 (UTC)
By default, write all articles in the present tense, including for those covering products or works that have been discontinued. PDP-8/S serial 123 (most likely) was built by DEC years ago, and no longer exists. The long discontinued PDP-8/S is an implementation of the PDP-8 architecture that was designed and built by DEC. Yes, I try to get the actions, such as designed, built, planned, thought about, in the past tense. Details that don't have an action, the number of register for example, should be present, though the decision to build a 12 bit machine is past. Thanks all for helping get this right. Gah4 ( talk) 00:19, 20 September 2016 (UTC)
I have reverted, as I believe most satisfy "By default, write all articles in the present tense, including for those covering products or works that have been discontinued." If someone believes that some edits don't satisfy that, please change just those. There is a limit to the size of the reason for edit box, so I couldn't say it all there. As above, I ask myself if the statement is still true, and write it present tense if it is. Note that many stay past, as that makes more sense. I will double check them myself. Thanks all. Gah4 ( talk) 05:51, 20 September 2016 (UTC)
The inflation template seems to follow a consumer price index. I wonder (without stating one way of the other) if that is right for the PDP-8? Gah4 ( talk) 02:08, 2 November 2016 (UTC)
This template is only capable of inflating Consumer Price Index values: staples, workers' rent, small service bills (doctor's costs, train tickets). This template is incapable of inflating capital expenses, government expenses, or the personal wealth and expenditure of the rich. Incorrect use of this template would constitute original research. If you yourself do not have economic training, then please consult someone who does before using this template.
Personally, I think that the PDP-8 should be considered a personal computer. (Only one person normally uses it at a time.) I am not sure where we are supposed to find someone with economic and computer training. Gah4 ( talk) 03:53, 2 November 2016 (UTC)
The 1967 DEC Small Computer Handbook dealt with the PDP-8 as well as the PDP-8/S; it doesn't suggest, anywhere that I can see, that the "S" in "PDP-8/S" stands for "small", and, as it includes the PDP-8 non-/S, it indicates that the PDP-8 non/S is also a "small" computer. Guy Harris ( talk) 08:02, 16 November 2018 (UTC)
The code examples are of exceptionally poor quality, as are the subjective, and misguided, remarks about the supposed limitations of the -8. The code for PUSH and POP is extremely poor, and not representative of how one programs the -8. This is an ideal case for the auto-increment registers; one does not do the sort of AC hacking illustrated here. Moreover, it is quite typical to exploit field boundaries and wrap-arounds when dealing with issues such as overflow, which is not even checked in the illustrated code. Furthermore, it is a small matter to implement PDP-10-style PUSHJ/POPJ for recursive subroutines, and it is false that JMS leads to the kinds of bugs alleged here. The remark about a "skip chain" is telling: no competent -8 programmer would ever use a skip chain for processing interrupts. Instead one uses a "jump chain", which employs no SKP instructions at all. I believe it was either The Small Computer Handbook or Introduction to Programming that illustrated the "skip chain" method, and perhaps the remark is taken from there. Robert Harper ( talk) 02:32, 6 May 2021 (UTC)
First, I am an expert on the PDP-8; I used to make my living programming it. I am not incorrect about any technical point.
You describe a "skip chain", which is not used in any serious code. In. "jump chain", ie "jmp chain," there are NO wasteful SKP instructions. You write, "TSF; JMP NOTTTY; KSF; JMP NOTKBD; Etc", rather than the idiotic "TSF; SKP; JMP ITSTTY; KSF; SKP; JMP ITSKBD; Etc". Look at Richard Lary's "Toy", which turned into RTS-8, if you want to learn how to write -8 code.
Second, there is a standard package for PUSHJ/POPJ, whose coding is elegant, unlike what is suggested here as exemplary (and then blamed on the -8 throughout). There has never been a bug in any serious code caused by someone thinking that JMS supports recursion, which it did not and should not do. After all, the -8 was the first RISC, and, unfortunately for them, DEC killed itself by scrapping that and thinking that the idea of a computer is to be a high-level programming language, a CISC, of which the VAX became the laughing stock example. — Preceding unsigned comment added by RobertWHarper ( talk • contribs) 14:19, 9 May 2021 (UTC)