Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

PAL8 phase error: The real meaning?

82 views
Skip to first unread message

Rich Alderson

unread,
Mar 10, 2013, 5:56:09 PM3/10/13
to
My friend Mark Hyde has already told me I'm crazy for trying to do anything in
assembler on the PDP-8/e, but I'd like to have someting explained to me.

When I try to (re)compile a known working utility program, PIP10, from the
source on the ibiblio/sunsite archive, I get a "PH 0200" failure, which of
course does not produce a listing file so that I can see where it's going off
the rails.

I've removed every angle bracket, both "<" and ">", from the source, replacing
them with the 8-bit values they translate to, yet I still get the same error,
which the PAL8 manual tells me is due to an unclosed conditional expression.
(NB: There are no conditional expressions, closed or otherwise, in the entire
source.)

So would someone be good enough to explain to me just what PAL8 is trying to
tell me?

--
Rich Alderson ne...@alderson.users.panix.com
the russet leaves of an autumn oak/inspire once again the failed poet/
to take up his pen/and essay to place his meagre words upon the page...

David Gesswein

unread,
Mar 11, 2013, 7:46:20 AM3/11/13
to
In article <mdd1ubm...@panix5.panix.com>,
Rich Alderson <ne...@alderson.users.panix.com> wrote:
>My friend Mark Hyde has already told me I'm crazy for trying to do anything in
>assembler on the PDP-8/e, but I'd like to have someting explained to me.
>
Its not that bad.

>When I try to (re)compile a known working utility program, PIP10, from the
>source on the ibiblio/sunsite archive, I get a "PH 0200" failure, which of
>course does not produce a listing file so that I can see where it's going off
>the rails.
>
I tried with this one
http://www.pdp8online.com/pdp8cgi/os8_html/PIP10.PA?act=file;fn=images/os8/pdp8-12.rk05;blk=1027,165,1;to=auto

.PAL PIP10.PA
ERRORS DETECTED: 0
LINKS GENERATED: 1

.

If the file has unix line ending instead of dos (cr/lf) then I do get your
error.

.PAL PIP10.PA
PH 0200

.

Type the file and see if the lines are all messed up.


Rich Alderson

unread,
Mar 11, 2013, 4:20:28 PM3/11/13
to
d...@www.pdp8online.com (David Gesswein) writes:

> In article <mdd1ubm...@panix5.panix.com>,
> Rich Alderson <ne...@alderson.users.panix.com> wrote:

>> My friend Mark Hyde has already told me I'm crazy for trying to do anything in
>> assembler on the PDP-8/e, but I'd like to have someting explained to me.

> Its not that bad.

>> When I try to (re)compile a known working utility program, PIP10, from the
>> source on the ibiblio/sunsite archive, I get a "PH 0200" failure, which of
>> course does not produce a listing file so that I can see where it's going off
>> the rails.

> I tried with this one
> http://www.pdp8online.com/pdp8cgi/os8_html/PIP10.PA?act=file;fn=images/os8/pdp8-12.rk05;blk=1027,165,1;to=auto

> .PAL PIP10.PA
> ERRORS DETECTED: 0
> LINKS GENERATED: 1

> If the file has unix line ending instead of dos (cr/lf) then I do get your
> error.

> .PAL PIP10.PA
> PH 0200
>
> .

> Type the file and see if the lines are all messed up.

HAH!

Thank you, David! That was it!

GNU Emacs fooled me. It handed me a "Unix" file, and told me that it was
"corrected" to a "DOS" file. It didn't tell me that it wasn't actually putting
^M characters into the file.

I manually added them to the file (obtained from ibiblio), and it compiles
clean.

Thanks again!

Klemens Krause

unread,
Mar 12, 2013, 4:24:09 AM3/12/13
to
Rich Alderson wrote:
> My friend Mark Hyde has already told me I'm crazy for trying to do anything in
> assembler on the PDP-8/e, but I'd like to have someting explained to me.
>
> When I try to (re)compile a known working utility program, PIP10, from the
> source on the ibiblio/sunsite archive, I get a "PH 0200" failure, which of

If I remember right, this may also happen, if you have an illegal character
in your source. Especially the infamous non-printing characters.
Also I don't remember, but if you have downloaded an unix-text with <LF>-only
lines, funny things happen if you try to assemble such a program.
Did you verify, that the last line contains a $?
Normally PAL doesn't need this $, if the last character is a ctl-Z. But if you
don't have this $ and the ctl-Z has gone away, the assembler sees garbage in
this last line.

Klemens




Klemens Krause

unread,
Mar 12, 2013, 4:47:50 AM3/12/13
to
Uups, did my first reply disapear?


Rich Alderson wrote:
> My friend Mark Hyde has already told me I'm crazy for trying to do anything in
> assembler on the PDP-8/e, but I'd like to have someting explained to me.
>
> When I try to (re)compile a known working utility program, PIP10, from the
> source on the ibiblio/sunsite archive, I get a "PH 0200" failure, which of

If I remember right, this may also happen if the assembler source contains illegal
characters, especially the infamous nonprintig characters after the end of a
statement.
Or if the last line with the $ is missing. Normally this doesn't matter, if the last
<CR><LF> is immediately followd by a ctl-Z.
Also funny results are produced, if you try to assemble an UNIX.PA with only <LF> as
line delimiter.

Klemens

cjl

unread,
Apr 20, 2013, 5:40:38 AM4/20/13
to
The sunsite/ibiblio.org archive is strictly unix text on all source files. You MUST change the convention back universally, else you are just not reading as intended. I personally use Rahul Dhesi's famous FLIP program which can go either way; It was generally used to put the files there and should be reverse at your end when retrieving it to undo the problem.

I am using SIMH PDP8 emulator on a Windows/DOS system and thus, FLIP to the rescue as usual. Note that MS-DOS text is totally DEC compatible including the tab stops every 8.

In fact, I am editing source code with NOTEPAD at times. The only tiny problem is that I need a FF character periodically and have to copy and paste it where I want it, since NOTEPAD cannot create it. [I added one in with a different editor; NOTEPAD displays all undisplayables identically [a little rectangle] so make sure you are using only that once; otherwise it works fine. [Of course I mostly use TECO wherever possible.]

cjl


Charles Richmond

unread,
Apr 22, 2013, 10:35:17 AM4/22/13
to
"Rich Alderson" <ne...@alderson.users.panix.com> wrote in message
news:mdd1ubm...@panix5.panix.com...
> My friend Mark Hyde has already told me I'm crazy for trying to do
> anything in
> assembler on the PDP-8/e, but I'd like to have someting explained to me.
>
> When I try to (re)compile a known working utility program, PIP10, from the
> source on the ibiblio/sunsite archive, I get a "PH 0200" failure, which of
> course does not produce a listing file so that I can see where it's going
> off
> the rails.
>
> I've removed every angle bracket, both "<" and ">", from the source,
> replacing
> them with the 8-bit values they translate to, yet I still get the same
> error,
> which the PAL8 manual tells me is due to an unclosed conditional
> expression.
> (NB: There are no conditional expressions, closed or otherwise, in the
> entire
> source.)
>
> So would someone be good enough to explain to me just what PAL8 is trying
> to
> tell me?
>

First let me apologize for even posting here. I am pretty clueless about
the PDP-8 in general.

I learned something about phase errors in a totally different assembler
environment. My understanding of a phase error is that some symbol had a
different value calculated for it on pass 2 of the assembler... than that
same symbol had on pass 1.

In the PDP-8 PAL-D manual, a "PH" or phase error is described as: PAL-D has
received input files in an incorrect order; Assembly is terminated and
control is returned to the monitor.

Rich, you might email Professor Doug Jones of the University of Iowa about
this problem. Several years ago, he used to post the <alt.sys.pdp8> and he
kept a list of all the PDP-8 models which he posted periodically. He is
*very* knowledgeable about things PDP-8. He wrote a PDP-8 emulator which I
ran many years ago in Motif on an AViiON workstation. I think I had an old
Macintosh version too. The emulation produced a graphic of the PDP-8 front
panel and one could push the panel switches with the mouse. Great stuff!!!
I feel sure he would be glad to help you with your assembly error. His web
page is http://homepage.cs.uiowa.edu/~jones/ and his email is
jo...@cs.uiowa.edu.

--

numerist at aquaporin4 dot com



0 new messages