• Please review our updated Terms and Rules here

issues generating RT11FB for TSX+

hush

Experienced Member
Joined
Feb 7, 2022
Messages
435
Location
MD, USA
hey all,

i'm back to trying to get TSX+ 6.5 running on RT11 5.7, but i'm having trouble getting my target system properly generated. my simh config is:

Code:
cons log=rt11ins.log
set cpu 11/70, fpp, 4m
set cpu noidle
;set throttle 10%

; connect to front panel
set realcons host=localhost
set realcons panel=11/70
set realcons interval=1
set realcons connected

; ra disks
set rq en
set rq0 ra92
at rq0 tico-tsxplus-data.ra92

; rl disks
set rl en
set rl0 rl02
at rl0 rt11v57.rl02
set rl1 rl02
at rl1 tico-tsxplus-sysbak.rl02

; rk disks
set hk0 en, rk07
at hk0 tico-tsxplus-sys.rk07

; serial lines
set dz lines=8
at dz 1170

b hk0

since there's a ton of console output from my sysgen, here is my install and sysgen session: https://pastebin.com/raw/FhLQLm3V

as you can see i am able to boot the new kernel initially and the selected features are in show conf, but as soon as i hard reset the system it cannot boot. when performing the ren/sys step i noticed that it was copying from dk:, not dm:- could this have something to do with it? i don't recall noticing this when i was using a du: based monitor and do not have any dk: devices in my config.

appreciate the help as always!
 
Hi

There's not enough information for me to follow some of the steps you've outlined, however following the ancient dictum that "most bugs are local" and looking at the crash site:

Connecting to host localhost ...
boot.ini-30> at dz 1170
Listening on port 1170

HALT instruction, PC: 000002 (HALT)

I would check the actual vector address of the DZ controller because an uninitialized interrupt vector will often, if not most usually, halt at location zero.

I note that your SYSGEN script specifies the DZ vector as 330:

405. What is the CSR for the first DZ multiplexor (160100)?

410. What is the vector for the first DZ multiplexor (330)?

However, the default SimH DZ vector is 300, as reported by SimH <show dev>

sim> show dev
PDP-11 simulator configuration
...
DZ address=17760100-17760117*, vector=300-314*, BR5, lines=16

If this is the problem, then I would update the SYSGEN script to use vector address 300.


Regarding the following:

when performing the ren/sys step i noticed that it was copying from dk:, not dm:- could this have something to do with it? i don't recall noticing this when i was using a du: based monitor and do not have any dk: devices in my config.

I don't see the "ren/sys" step in your listings, however, under RT-11 "DK" is a logical device name that refers to the default device, not the hardware RK0x device.


Ian
 
I don't see the "ren/sys" step in your listings, however, under RT-11 "DK" is a logical device name that refers to the default device, not the hardware RK0x device.
good to know, thank you- i have very little experience in RT11 still!

i'm using the following commands to install the newly generated files:

Code:
.set usr noswap
.ren/sys .syg .sys

this is followed by a physical front panel reset of the pidp11.

If this is the problem, then I would update the SYSGEN script to use vector address 300.
unfortunately this doesn't seem to have done it, a fresh install and a fresh sysgen with the same options as before with the 300 vec for the dz11 results in the same behavior. here's my sysgen.ans if it helps: https://pastebin.com/raw/ymW7Zi5D
 
Hi

Well, that information shows why you were using vector 330 for the DZ device because vectors 300, 310 and 320 have already been used:

SETN DLC$1 176500 .;Status register of second DL11
SETN DLV$1 300 .;Vector of second DL11
SETN DLC$2 176510 .;Status register of third DL11
SETN DLV$2 310 .;Vector of third DL11
SETN DLC$3 176520 .;Status register of fourth DL11
SETN DLV$3 320 .;Vector of fourth DL11

So, you'll have to tell SimH to use vector 330 for the DZ device.

You can use the SimH <show devices> command to make sure that any other vector addresses specified in the SYSGEN script are the same as the SimH settings.

I note you're using the PiDP emulation--you might get a more informed response to your issues over at the PiDP-11 user group https://groups.google.com/g/pidp-11

Ian
 
I use TSX+ v6.5 with RT-11 v5.7... You only need RT-11 SB or FB to start the system so you can run TSX, which takes over completely - you don't need any multiterminal support or config in RT-11 at all, but it is useful to have say the XL handler on 176500/300 and you likely need nearly 20000 words free to start TSX. After that the TSX config (macro TSGEN, @TSXLNK) controls everything

Also more free memory will help when re-compiling TSX for your config - until you can do that under TSX (which is somewhat faster with the disk caching)

I use it on a real 11/73 or 11/83, so I can't help with SIMH setup, but keep the RT-11 side simple!

TSX will usually fail to start or die horribly if any vectors are wrong, but if devices are missing, it is fine so long as no other device is on the same CSR.

I would ignore floating vectors, use 60 and 300-370 for DL lines, 160100 / 400, for DH/DHV and 160140 / 420 for DZ/DZV or similar, then you can configure it to work with whatever hardware is present, without changing lots of settings..

Robin
 
i'm officially at a loss with this one, i've pared my sysgen down to just the DM boot device and still when i hard reset the system i get "HALT instruction, PC: 000002 (HALT)". SYSGEN.ANS below:

Code:
SETF BL                 .;Baseline monitor
SETT SB                 .;Single background monitor
SETT FB                 .;Foreground/Background monitor
SETF XM                 .;Extended memory monitor
SETF XB                 .;Extended background monitor
SETF ZB                 .;Supervisor I-D background monitor
SETF ZM                 .;Supervisor I-D monitor
SETT FBXM               .;FB or XM
SETF XBXM               .;XB or XM
SETF XMONLY             .;XM only
SETF XBONLY             .;XB only
SETF CTS                .;CTS-300 SYSGEN
SETF PROCTS             .;Professional CTS-300 SYSGEN
SETT TIM$IT             .;Device time out
SETT TIME$R             .;SB timer support
SETT RDF$L              .;System I/O error messages
SETT SYT$K              .;System job support
SETT SPC$PS             .;Save/set main-line PC and PS support
SETT SCCA$G             .;Global SCCA support
SETF MTT$Y              .;No Multiterminal support
SETN TTYOUT 40.         .;Size of the output buffers
SETN TTYIN 134.         .;Size of the input buffers
SETT ROL$OV             .;Month rollover support
SETT U$CL               .;User command linkage
SETT HSR$B              .;High speed ring buffer support
SETT U$TIL              .;Utility commands
SETT L$ANG              .;Language commands
SETT M$INI              .;Minimal commands
SETN CLOCK 60.          .;Power line frequency
SETT UNI$64             .;Extended device-unit support
SETT OWN$ER             .;Device ownership support
SETF KW11$P             .;No Use KW11-P clock as system clock
SETT STAR$T             .;Startup command file
SETT FPU$11             .;Floating point support
SETF MPT$Y              .;No Memory parity support
SETF PWF$L              .;No Power fail
SETT BATC$H             .;Batch support
SETF ERL$G              .;No Error log support
SETT MQ$RES             .;MQ resident
SETF DX                 .;RX01 Single-Density Diskette
SETF DY                 .;RX02 Double-Density Diskette
SETF RK                 .;RK05 Cartridge Disk
SETF DL                 .;RL01/RL02 Cartridge Disk
SETT DM                 .;RK06/RK07 Cartridge Disk
SETF MT                 .;TM11 (UNIBUS) Magtape
SETF MS                 .;TS11,TU80/TSV05/TSU05 Tape
SETF MM                 .;TJU16 (MASSBUS) Magtape
SETF NL                 .;Null Handler
SETF LP                 .;Line Printer
SETF DU                 .;MSCP Disk Class Handler
SETF LD                 .;Logical Disk Handler
SETF VM                 .;Virtual Memory Handler
SETF PCDZ               .;RX50 PRO Series
SETF DW                 .;RD50/51/52 PRO Series
SETF SP                 .;Transparent Spooling Handler
SETF XL                 .;VTCOM Communications Handler
SETF XC                 .;VTCOM Handler PRO Series
SETF MU                 .;TMSCP Magtape Class Handler
SETF NC                 .;Ethernet Handler PRO Series
SETF NQ                 .;Ethernet Handler for Q-BUS
SETF NU                 .;Ethernet Handler for UNIBUS
SETF LS                 .;Serial Line Printer
SETN UDEVCT 0           .;User handler count
SETF LPP                .;CTS-300 Line printer
SETF LQP                .;CTS-300 Line printer
SETF LRP                .;CTS-300 Line printer
SETF LSP                .;CTS-300 Line printer
SETF LPS                .;CTS-300 Line printer
SETF LQS                .;CTS-300 Line printer
SETF LRS                .;CTS-300 Line printer
SETF LSS                .;CTS-300 Line printer
SETN LPNUM 0            .;Number of CTS-300 Printers
SETN EMPTY 0.           .;Empty device slots

am i going insane? it's not the DZ device because if i completely remove that from the config it still falls over:

Code:
Waiting for console Telnet connection
Waiting for console Telnet connection
Running

HALT instruction, PC: 000002 (HALT)

SIMH config hasn't changed, the RQ and RL devices have no units attached but are enabled
 
If you have a bootable RT11 SJ/FB system, then that is ALL you need for TSX. You need to do a macro tsgen and @tsxlnk to build TSX for your system
 
I can try to play around with it over the weekend, but I need precise instructions (for example, a link to the image) - from which distribution the generation attempt is made.
 
If you have a bootable RT11 SJ/FB system, then that is ALL you need for TSX. You need to do a macro tsgen and @tsxlnk to build TSX for your system

Agreed. To expand a bit, essentially you need enough free memory and the boot device handler to get the show on the road. Turn off and unload any other handlers or features. A "SHOW ALL" will detail the settings, memory usage and other features of the running system. Once TSX launches, it loads its own handlers and features. No part of the RT11 operating system remains. Most tools are common to both RT11 and TSX

If the disk drive is not already booting directly into SJ (or SB) version of RT11 AND there is a version of RT11SJ.SYS on the disk, you should be able to execute "BOOT SY:RT11SJ" command to start it".

Edit the TSGEN.MAC file starting with the following section. Start with the basics and once you get an image that works, you can specify more features.

;=================================================================
; The TSX-Plus system manager alters values in the following
; section to customize the system for a particular configuration.

; System parameters:
;
; Swap file device-file specification (do not place on VM).
;
SWDBLK: .RAD50 /SY SWAP TSX/
Then compile the TGEN file, and then link it with other libraries or object modules. The warnings during linkage are normal.
.MAC TSGEN

.DIR TSGEN
TSGEN .MAC 218 28-Dec-1982 TSGEN .OBJ 39
.@TSXLNK
?LINK-W-Multiple definition of $OVRH
?LINK-W-Multiple definition of $OVRH

.DIR TSX
TSX .MAP 88 TSX .STB 49
TSX .SAV 242
3 Files, 379 Blocks

.set sl off
.unload sl
.show all

RT-11SB V05.07
Booted from DU0:RT11SB

Device Status CSR Vector(s)
------ ------ --- ---------
DU Resident 172150 154

No multi-terminal support

Address Module Words
------- ------ -----
160000 IOPAGE 4096.
154060 DU 1000.
134372 RMON 3995.
001000 ..BG.. 23421.

.dir tsx.sav

TSX .SAV 242
1 Files, 242 Blocks
6185 Free blocks

.R TSX

Logon please:JERRY
Password:
Welcome to the system
6.20

.
 
if unloading the unused drivers is just as good then i'm happy to stop wrestling with the sysgen, i have a feeling if i keep trying i'll end up in a padded room :p

thanks all!
 
was able to get TSX generated and linked, but i'm getting this:

Code:
.r tsx
?TSX-F-Computer line time clock (50 or 60 Hz) is not working

the 60hz clock is in both SIMH and RT11 configs, and i'm not seeing anything i could modify in TSGEN.MAC. the install guide also doesn't say much, beyond the fact that you need a working clock to run TSX. could be the ancient version of SIMH on the pi11 is doing something TSX doesn't like?

edit: same issue on a recent open-simh build, so it's not that
 
TSX needs the LTC clock enabled - RT-11 will boot without it, but the clock won't advance. It's a SIMH config problem.

Here you can see that I disabled LTC with RT-11 running and tried to start TSX:
1729789643627.png
 
TSX needs the LTC clock enabled - RT-11 will boot without it, but the clock won't advance. It's a SIMH config problem.

Here you can see that I disabled LTC with RT-11 running and tried to start TSX:
View attachment 1288490
i can see the clock ticking, though, and i think the clock is enabled by default unless you explicitly disable it. it's there in my config:

Code:
sim> sh clk
CLK     60Hz, address=17777546-17777547, vector=100, BR6

Code:
.tim
00:00:50

.tim
00:00:51

.tim
00:00:52

.tim
00:00:52

.tim
00:00:53

.tim
00:00:54
 
I wonder if there is a software check for the clock interrupting too fast or slow?

This would make the SIMH emulation look like a very fast or slow clock...

There are options in SIMH (I think) to make it more 'processor speed friendly'?

Dave
 
I wonder if there is a software check for the clock interrupting too fast or slow?

This would make the SIMH emulation look like a very slow clock...

There are options in SIMH (I think) to make it more 'processor speed friendly'?

Dave
that's definitely a thought, SIMH has SET THROTTLE, i'll have to play around with that a little bit
 
If you are running in SIMH, the emulation runs so fast that code it uses to determine whether the LTC is present fails.

Here is what I use in the ini file.
set throttle 2000/1
expect "Logon please" set throttle 2000/1 ; GO

show throttle

You can adjust the amount of throttling to your tastes.

There is a patch for TSX as well, but I don't have a handle on it at the moment.

Jerry
 
If you are running in SIMH, the emulation runs so fast that code it uses to determine whether the LTC is present fails.

Here is what I use in the ini file.


You can adjust the amount of throttling to your tastes.

There is a patch for TSX as well, but I don't have a handle on it at the moment.

Jerry
yep, that was exactly it! my usual SET THROTTLE 10% allowed it to work properly :D

thanks again, all! much appreciated!
 
Back
Top