Error in setting 22 bit address for uda

14 views
Skip to first unread message

Mark Matlock

unread,
Nov 24, 2022, 12:15:52 PM11/24/22
to Joerg Hoppe, UniBone
Joerg,
   One of the things I’ve been trying to do with the QBone is set it at an alternative MSCP address so I could boot my normal MSCP disk but be able to make a backup to the QBone from where I can easily ftp the updated disk image to others.

   To do this I power up the system, then suppress the boot up of the PDP-11/83 until the QBone is fully booted up. Then I activate my QBone script file to enable the secondary MSCP controller putting it at 17772154 so it does interfere with the primary. Then I boot the PDP-11 which would hopefully have both MSCP controllers online. I couldn’t figure out why it didn’t work until I was able to capture the QBone dialog which quickly scrolls past during the script execution.

   The p addr 17772154 command is causing an error:

D>>>sd uda

Current device is "uda"

*** Test of device parameter interface and states.
     QBUS devices are clients to PDP-11 CPU acting asg DMR/IRQ Arbitrator
    (CPU active: running or HALTed executing microcode ODT).
    CPU is physical or emulated.
    Memory access as Bus Master with DMR/DMG/SACK handshake.
    Current device is "uda"
    QBUS controller base address = 17772150
    NO QBUS memory installed ... device test limited!

m i [<endaddr>]      Install (emulate) max QBUS memory, or up to including even <endaddr>
m f [word]           Fill QBUS memory (with 0 or other octal value)
m d                  Dump QBUS memory to disk
m ll <filename>      Load memory content from MACRO-11 listing file (boot loader)
m ll                 Reload last memory content from file "duboot.lst"
m lp <filename>      Load memory content from absolute papertape image
m lp                 Reload last memory content from file "duboot.lst"
ld                   List all defined devices
en <dev>             Enable a device
dis <dev>            Disable device
sd <dev>             Select "current device"
p <param> <val>      Set parameter value of current device
p <param>            Get parameter value of current device
p panel              Force parameter update from panel
p                    Show all parameter of current device
d <regname> <val>    Deposit octal value into named device register
e <regname>          Examine single device register (regno decimal)
e                    Examine all device registers
e <addr>             Examine octal QBUS address.
d <addr> <val>       Deposit octal val into QBUS address.
dbg c|s|f            Debug log: Clear, Show on console, dump to File.
                       (file = qunibone.log.csv)
init                 Pulse QBUS INIT
h <1|0>              Set/release QBUS HALT, like front panel toggle switch
pwr                  Simulate QBUS power cycle (DCOK/POK) like front panel RESTART
q                    Quit

D>>>p addr 17772154

Error : Number 4191340 exceeds bitwidth 18
D>>>p

Parameters of device uda:
Name             Short  Value     Unit  Access     Info
---------------  -----  --------  ----  ---------  ----------------------------------------------------------------------
name             name   uda             read only  Unique identifier of device
type             type   UDA50           writable   Type
enabled          en     0               read only  device installed and ready to use?
emulation_speed  es     1               writable   1 = original speed, > 1: faster
verbosity        v      3               writable   1 = fatal, 2 = error, 3 = warning, 4 = info, 5 = debug
base_addr        addr   17772150        writable   controller base address in IO page
slot             sl     20              writable   backplane slot #, interrupt priority within one level, 0 = next to CPU
intr_vector      iv     000             writable   interrupt vector address
intr_level       il     5               writable   interrupt bus request level: 4,5,6,7
22_bit_dma       dma22  1               writable   Enable 22-bit DMA


For testing purposes then I tried an 18 bit controller address, but it appears to map it to a non-I/O page address but it shows that my command syntax is ok.

D>>>p addr 772154

Name       Short  Value   Unit  Access    Info
---------  -----  ------  ----  --------  ----------------------------------
base_addr  addr   772154        writable  controller base address in IO page

D>>>p

Parameters of device uda:
Name             Short  Value   Unit  Access     Info
---------------  -----  ------  ----  ---------  ----------------------------------------------------------------------
name             name   uda           read only  Unique identifier of device
type             type   UDA50         writable   Type
enabled          en     0             read only  device installed and ready to use?
emulation_speed  es     1             writable   1 = original speed, > 1: faster
verbosity        v      3             writable   1 = fatal, 2 = error, 3 = warning, 4 = info, 5 = debug
base_addr        addr   772154        writable   controller base address in IO page
slot             sl     20            writable   backplane slot #, interrupt priority within one level, 0 = next to CPU
intr_vector      iv     000           writable   interrupt vector address
intr_level       il     5             writable   interrupt bus request level: 4,5,6,7
22_bit_dma       dma22  1             writable   Enable 22-bit DMA

D>>>ena uda


  If you need any additional information about the problem do let me know.

Thanks and Best Regards,
Mark


Joerg Hoppe

unread,
Nov 24, 2022, 2:07:36 PM11/24/22
to Mark Matlock, UniBone
Hi Mark and all,

this error should've been fixed  in the "beta" branch, isn't it?
Thanks to  Kristen McIntyre for reporting this first,

kind regards,
Joerg

Mark Matlock

unread,
Nov 24, 2022, 2:19:10 PM11/24/22
to Joerg Hoppe, UniBone
Joerg,
Thanks! I must not have updated this QBone to the beta branch. I’ll do that and try it again.
Best,
Mark
Reply all
Reply to author
Forward
0 new messages