On Fri, Mar 30, 2018 at 7:25 AM, Robert Armstrong via cctalk
<cctalk at classiccmp.org> wrote:
The qt driver, however only works if you have the very late model DELQA that has
"turbo" mode. I think that was called the DETQA, but I'm not sure about
that. If you have an earlier DELQA then the qt driver simply says "qt0: !Turbo"
and quits. Gotta love those terse Un*x error messages!
The older non-turbo DELQAs and the DESQA (M3127, which is what I have) only seem to
work with the qe driver. It correctly recognizes and identifies them as a DELQA. I
believe the DESQA was identical to the DELQA but with S-box handles and a built in
thinwire transceiver.
Bob
Are there any hardware differences between the M7516 non-turbo and the
M7516-YM turbo versions of the DELQA, or only firmware differences?
Can you convert a non-turbo version into a turbo version just be
replacing the firmware EPROM?
I just checked and I have at least two M3127 DESQA. The M3127-PA Rev
B02 has 23-334E5 / 23-335E5 firmware EPROMs, the M3127-PA Rev D03 has
23-365E5 / 23-366E5 EPROMs.
Pete's DECROMs collection says the 23-365E5 / 23-366E5 set is the
DELQA-Plus aka Turbo DELQA Ver.2.0.0 set which replaces the 23-334E5 /
23-335E5 set.
If you have some spare 27C128 EPROMs you could try burning a 23-365E5
/ 23-366E5 set to install in your M3127 DESQA and see if the qt driver
is happy with it. I might try that myself eventually when time
permits.
For the curious about the 2.11BSD "qt0: !Turbo" error message:
src\sys\pdpif\if_qt.c:
qtturbo(sc)
register struct qt_softc *sc;
{
register int i;
register struct qtdevice *addr = sc->addr;
struct qt_init *iniblk = (struct qt_init *)SEG5;
segm seg5;
/*
* Issue the software reset. Delay 150us. The board should now be in
* DELQA-Normal mode. Set ITB and DEQTA select. If both bits do not
* stay turned on then the board is not a DELQA-YM.
*/
addr->arqr = ARQR_SR;
addr->arqr = 0;
delay(150L);
addr->srr = 0x8001; /* MS | ITB */
i = addr->srr;
addr->srr = 0x8000; /* Turn off ITB, set DELQA select */
if (i != 0x8001)
{
printf("qt@%o !-YM\n", addr);
return(0);
}
/*
* Board is a DELQA-YM. Send the commands to enable Turbo mode. Delay
* 1 second, testing the SRR register every millisecond to see if the
* board has shifted to Turbo mode.
*/
addr->xcr0 = 0x0baf;
addr->xcr1 = 0xff00;
for (i = 0; i < 1000; i++)
{
if ((addr->srr & SRR_RESP) == 1)
break;
delay(1000L);
}
if (i >= 1000)
{
printf("qt@%o !Turbo\n", addr);
return(0);
}