Non-EAE support in U/W FOCAL. A mostly not yet working prototype.

35 views
Skip to first unread message

William Cattey

unread,
Sep 12, 2025, 12:03:37 AMSep 12
to PiDP-8
I've decided to attempt to get a non-EAE version of U/W focal going. I don't have the chops to take the 8XFPP.PA and 8XFIO.PA modules and rewrite them to be non-EAE, but I have started writing a one-pager that substitutes for the EAE calls in those two modules. It currently mostly doesn't work.

I've got the MUY and DVI emulations passing basic smoke tests.

Check it out in the uwf branch of the PiDP-8/i repo at tangentsoft.com:
https://tangentsoft.com/pidp8i/timeline?r=uwf

I've got my module integrated into U/W FOCAL, building and walking, if not running:

```
RU RKA1:UWFNOE
*t 3
4.095864011E+03*T PI
3.141721908E+00*T 3
?22.65
*T 3
?22.65
*T PI
3.141721908E+00*
*T 3.1
?22.65
*^C
.$.[A^U
.RU RKA1:UWFNOE
*T 3 + 4
8.190766548E+03*^C
.R RKA1:UWFNOE
RKA1.SV NOT FOUND
.RU RKA1:UWFNOE
*T 2
4.098286172E+03*T 2
?22.65
*^C
```

Additional eyes on the code and helpful comments are most welcome.

-Bill

William Cattey

unread,
Sep 24, 2025, 10:31:23 AM (3 days ago) Sep 24
to PiDP-8
I found and fixed several issues.  It's much closer to working.

I added a test mode in the U/W FOCAL integration where the EAE computation is compared against the emulated one, and it halts if there's a difference.  This saved me a lot of single-instruction stepping to find the next bug. But then it started blowing out on known good test cases. The current code seems to corrupt the emulated values in a way I've not been able to see.  When I turn off the test mode, I get basic operation (but I have not tested the division emulation at all.)

Attached is the current code.  You rebuild U/W FOCAL with 8NFIO.PA and 8NFOO.PA instead of 8XFIO.PA and 8XFPP.PA.

Note that the uwf branch of the tangentsoft repository has this code checked in, and if you build from that source everything is ready to go to create UWFNOE.SV in the bin/uwfocal.rk05 build image.


I'd be SUPER grateful for another pair of eyes on this.  What HAVE I done wrong???

-Bill
8NFPP.PA
8NFIO.PA
Reply all
Reply to author
Forward
0 new messages