From simh at rickmurphy.net Tue Apr 2 12:45:39 2013 From: simh at rickmurphy.net (Rick Murphy) Date: Tue, 02 Apr 2013 12:45:39 -0400 Subject: [Simh] PDP8, Adventure, and SIMH In-Reply-To: <5155D9A4.5080107@gmail.com> References: <5155D9A4.5080107@gmail.com> Message-ID: <201304021645.r32Gjft7027469@rickmurphy.net> At 02:12 PM 3/29/2013, Rob Doyle wrote: >I just noticed that my PDP8 FPGA implementation differs from SIMH >when dealing with mixed/lower case text. > >I also checked the operation on David Gesswein's online PDP8 and the >operation of a real PDP8 matches the operation of my PDP8 FPGA and >differs from SIMH. > >I did use exactly the same RK05 disk image for both SIMH and the PDP8 >FPGA. The image for the real PDP8 /could/ be different. > >I'm guessing that SIMH intentionally forces upper case because I didn't >do anything special to the PDP8 FPGA. I didn't see any SIMH >configuration options to change this. > >Is this intentional? The option you're looking for is set tto 7b That will stop the case folding. -Rick From bqt at softjar.se Tue Apr 2 13:16:32 2013 From: bqt at softjar.se (Johnny Billquist) Date: Tue, 02 Apr 2013 19:16:32 +0200 Subject: [Simh] PDP8, Adventure, and SIMH In-Reply-To: <201304021645.r32Gjft7027469@rickmurphy.net> References: <5155D9A4.5080107@gmail.com> <201304021645.r32Gjft7027469@rickmurphy.net> Message-ID: <515B1270.2000009@softjar.se> On 2013-04-02 18:45, Rick Murphy wrote: > At 02:12 PM 3/29/2013, Rob Doyle wrote: > >> I just noticed that my PDP8 FPGA implementation differs from SIMH >> when dealing with mixed/lower case text. >> >> I also checked the operation on David Gesswein's online PDP8 and the >> operation of a real PDP8 matches the operation of my PDP8 FPGA and >> differs from SIMH. >> >> I did use exactly the same RK05 disk image for both SIMH and the PDP8 >> FPGA. The image for the real PDP8 /could/ be different. >> >> I'm guessing that SIMH intentionally forces upper case because I didn't >> do anything special to the PDP8 FPGA. I didn't see any SIMH >> configuration options to change this. >> >> Is this intentional? > > The option you're looking for is > set tto 7b > > That will stop the case folding. I haven't looked, but I don't think that is the issue. The "old" ADVENT for OS/8 had the text in all uppercase in the database. So, if you get lowercase output you have a different database than the one I'm familiar with. Also, ADVENT runs under the FORTRAN IV runtime system, which does not use any OS/8 device drivers, thus any options set in OS/8 are unlikely to have any effect. FRTS is like its own operating system. It runs with interrupts, and do most I/O on its own. It also have a FPP8 emulator, since most all code from FORTRAN IV is actually FPP8 code, and not PDP8 code. This also means that things runs way faster if you actually have a FPP8 in your machine. Johnny From simh at rickmurphy.net Tue Apr 2 16:21:16 2013 From: simh at rickmurphy.net (Rick Murphy) Date: Tue, 02 Apr 2013 16:21:16 -0400 Subject: [Simh] PDP8, Adventure, and SIMH In-Reply-To: <515B1270.2000009@softjar.se> References: <5155D9A4.5080107@gmail.com> <201304021645.r32Gjft7027469@rickmurphy.net> <515B1270.2000009@softjar.se> Message-ID: <201304022021.r32KLIru001205@rickmurphy.net> At 01:16 PM 4/2/2013, Johnny Billquist wrote: >On 2013-04-02 18:45, Rick Murphy wrote: >>At 02:12 PM 3/29/2013, Rob Doyle wrote: >> >>>I just noticed that my PDP8 FPGA implementation differs from SIMH >>>when dealing with mixed/lower case text. >>> >>>I also checked the operation on David Gesswein's online PDP8 and the >>>operation of a real PDP8 matches the operation of my PDP8 FPGA and >>>differs from SIMH. >>> >>>I did use exactly the same RK05 disk image for both SIMH and the PDP8 >>>FPGA. The image for the real PDP8 /could/ be different. >>> >>>I'm guessing that SIMH intentionally forces upper case because I didn't >>>do anything special to the PDP8 FPGA. I didn't see any SIMH >>>configuration options to change this. >>> >>>Is this intentional? >> >>The option you're looking for is >>set tto 7b >> >>That will stop the case folding. > >I haven't looked, but I don't think that is the issue. Well, since you haven't looked, I can tell you that I have tried it and that is the issue. >The "old" ADVENT for OS/8 had the text in all uppercase in the database. That's technically correct. That's technically correct all versions of OS/8 ADVENT, since FRTS on OS/8 only handles sixbit characters. However, the fact that the database is all upper case doesn't stop the program from outputting mixed case. I frankly don't remember if there was ever a public version of OS/8 ADVENT that only had upper case output, but I don't think there ever was. What the original poster was seeing is that without "set tto 7b" all SIMH terminal output from the PDP-8 emulator is case-folded to upper case. What I provided is a way to see mixed case output. This default case folding happens for any program running on the simulated '8 and can be demonstrated easily with other programs. For example, the built in DIRECTORY command summary line is output in mixed case, but without "set tto 7b" that line shows up in all upper case. > So, if you get lowercase output you have a different database than > the one I'm familiar with. Well, I guess you know a lot more about OS/8 ADVENT than I do. Or you're playing an April Fools joke on me just a bit late. :) Hint, in case you haven't figured it out yet: *I* am the author of OS/8 Adventure. >Also, ADVENT runs under the FORTRAN IV runtime system, which does not >use any OS/8 device drivers, thus any options set in OS/8 are unlikely >to have any effect. You don't set any options in OS/8, you use the command above in the SIMH config file. And no, FRTS does use OS/8 device drivers (which OS/8 calls device handlers). How else is a FORTRAN program going to read a disk file? >FRTS is like its own operating system. It runs with interrupts, and do >most I/O on its own. It does terminal I/O on it's own, yes. It also handles a few other devices internally (LPT, paper tape reader and punch), but relies upon OS/8 handlers for mass storage devices. Interrupts are disabled during OS/8 calls. >It also have a FPP8 emulator, since most all code from FORTRAN IV is >actually FPP8 code, and not PDP8 code. This also means that things >runs way faster if you actually have a FPP8 in your machine. You can also avoid the FRTS emulator if you use SIMH with the FPP8-A emulation code. That runs ADVENT now in FPP mode now that the fixes I submitted for the FPP emulator have been incorporated into SIMH V3.9. -Rick From bqt at softjar.se Tue Apr 2 18:07:12 2013 From: bqt at softjar.se (Johnny Billquist) Date: Wed, 03 Apr 2013 00:07:12 +0200 Subject: [Simh] PDP8, Adventure, and SIMH In-Reply-To: <201304022021.r32KLIru001205@rickmurphy.net> References: <5155D9A4.5080107@gmail.com> <201304021645.r32Gjft7027469@rickmurphy.net> <515B1270.2000009@softjar.se> <201304022021.r32KLIru001205@rickmurphy.net> Message-ID: <515B5690.2070608@softjar.se> On 2013-04-02 22:21, Rick Murphy wrote: > At 01:16 PM 4/2/2013, Johnny Billquist wrote: >> On 2013-04-02 18:45, Rick Murphy wrote: >>> At 02:12 PM 3/29/2013, Rob Doyle wrote: >>> >>>> I just noticed that my PDP8 FPGA implementation differs from SIMH >>>> when dealing with mixed/lower case text. >>>> >>>> I also checked the operation on David Gesswein's online PDP8 and the >>>> operation of a real PDP8 matches the operation of my PDP8 FPGA and >>>> differs from SIMH. >>>> >>>> I did use exactly the same RK05 disk image for both SIMH and the PDP8 >>>> FPGA. The image for the real PDP8 /could/ be different. >>>> >>>> I'm guessing that SIMH intentionally forces upper case because I didn't >>>> do anything special to the PDP8 FPGA. I didn't see any SIMH >>>> configuration options to change this. >>>> >>>> Is this intentional? >>> >>> The option you're looking for is >>> set tto 7b >>> >>> That will stop the case folding. >> >> I haven't looked, but I don't think that is the issue. > > Well, since you haven't looked, I can tell you that I have tried it and > that is the issue. Hmm. Ok... >> The "old" ADVENT for OS/8 had the text in all uppercase in the database. > > That's technically correct. That's technically correct all versions of > OS/8 ADVENT, since FRTS on OS/8 only handles sixbit characters. However, > the fact that the database is all upper case doesn't stop the program > from outputting mixed case. I frankly don't remember if there was ever a > public version of OS/8 ADVENT that only had upper case output, but I > don't think there ever was. A program can certainly do mixed case even if the source data is all in uppercase. You just have to convert yourself. I know that the version I'm familiar with did not. But nothing would prevent there from being a version that did. Aha. And looking at that now, it seems like such a modification was done by you around 2007 or so. My experience is from way longer ago. (Since you did the conversion to mixed case output, you should definitely know that there was a version before that which did not...) > What the original poster was seeing is that without "set tto 7b" all > SIMH terminal output from the PDP-8 emulator is case-folded to upper > case. What I provided is a way to see mixed case output. Aha! I actually missed the part that this was purely a problem and solution within simh. My experience from ADVENT was actually from a real machine, and it really only output text in uppercase. And the same story is true for old versions running on PDP-11 and DEC-10. The text really was all in uppercase in the database, and the FORTRAN code did not to case conversion. I know that a later version of the database was converted to actually hold both lowercase and uppercase text, which is why I made my comment. Also, reading about changes made to the OS/8 version, it seems that version instead does case conversion in the code, and didn't change to a case converted database. But, looking at the code, I'd say that if the database had lowercase it would work just fine, since ADVENT is not using the I/O routines in FRTS anyway. But constant text in the source code would still be all uppercase in that case, yes. > This default case folding happens for any program running on the > simulated '8 and can be demonstrated easily with other programs. For > example, the built in DIRECTORY command summary line is output in mixed > case, but without "set tto 7b" that line shows up in all upper case. We seem to have two convoluted issues then. What you are describing is something which is simh-specific, and no doubt correct. What I'm talking about is not related to simh as such. And both issues can be a source of uppercase-lowercase issues in ADVENT. The thing I'm talking about will not affect a program like DIRECTORY. >> So, if you get lowercase output you have a different database than >> the one I'm familiar with. > > Well, I guess you know a lot more about OS/8 ADVENT than I do. Or you're > playing an April Fools joke on me just a bit late. :) Hint, in case you > haven't figured it out yet: *I* am the author of OS/8 Adventure. I have no intention of insulting anyone. I have, however, done a big rewrite of FRTS, as well as the FIV compiler for OS/8 in the past, so I actually do know something of what is going on under the hood. (Don't know if you, or many others ever saw the changes I've made to FORTRAN IV on OS/8, but you can find them on ftp.update.uu.se:/pub/pdp8/os8/) And I also did quite a lot of work on porting DUNGEON to OS/8 before I gave up... That one is just too big. But now we're talking about stuff I did about 20 years ago... I didn't know you did the original port of ADVENTURE to OS/8. I don't think I've ever seen a name attached to that work. >> Also, ADVENT runs under the FORTRAN IV runtime system, which does not >> use any OS/8 device drivers, thus any options set in OS/8 are unlikely >> to have any effect. > > You don't set any options in OS/8, you use the command above in the SIMH > config file. That was my mistake. I thought it was a comment about doing a "SET TTY