How To Stop the Tube?

bbc/electron apps, languages, utils, educational progs, demos + more
Post Reply
james
Posts: 330
Joined: Tue Aug 15, 2023 8:41 pm
Location: NE Hampshire
Contact:

How To Stop the Tube?

Post by james »

Master with MultiOS.

Brand new (to me) "Turbo" co-pro.

MOS 3.20 and 3.50, all works beautifully. *CO. (NO)TUBE as expected.

But woe; swap to OS 2.00 or 1.20 and there's the co-pro's banner. PAGE resolutely at &800 no matter what I do. Unplug DFS? Nah, still there. Use BeebAid's Tab-Break to enable/disable the Tube. Nah, still there.

So, short of pulling the co-pro out :( can I stop the Tube on a non-Master OS?

Nb: this is an Acorn co-pro, not a PiTube
User avatar
BeebMaster
Posts: 7379
Joined: Sun Aug 02, 2009 5:59 pm
Location: Lost in the BeebVault!
Contact:

Re: How To Stop the Tube?

Post by BeebMaster »

This is interesting because on the one hand I would expect OS 1.20 to recognise the Tube simply because the second processor is "powered on" (as there's no way exactly of unpowering an internal co-processor) but on the other hand I wouldn't expect OS 1.20 to know to look for a second processor on the internal Tube interface.

Is it any different (in Master mode I presume) if you do *CO. EXTUBE as well as *CO. NOTUBE then try the B or B+ OS?

For BBC B ROMs, the Tube host code is in DNFS (DFS 1.20/NFS 3.60) and in the 1770 DFS and possibly in ANFS 4.18 as well, so they might all need disabling somehow - but then the unpluggers usually used with BBC B aren't as reliable as *UNPLUG in the Master MOS.

i don't have a multi-OS but somebody must have encountered this situation before.
Image
james
Posts: 330
Joined: Tue Aug 15, 2023 8:41 pm
Location: NE Hampshire
Contact:

Re: How To Stop the Tube?

Post by james »

*co. extube and *co. notube confirmed in MOS 3.x

But swapping to OS 2.00, and killing nearly all the ROMs apart from Advanced ROM Manager. The tube is there!
IMG_7157.jpeg
And REPORT tells me it’s BASIC 2
tom_seddon
Posts: 889
Joined: Tue Aug 30, 2005 12:42 am
Contact:

Re: How To Stop the Tube?

Post by tom_seddon »

That is not the startup display I'd expect to see - tube init usually takes place before the OS banner is printed, so what you should see is the Tube banner, then the other stuff, then BASIC and the promph. No Acorn OS 64K or BBC Microcomputer 32K. Is it the same with OS 1.20? Is some other ROM stepping in and doing something strange?

What if you unplug the cartridge with ROMs 2 and 3?

My Acorn stuff is all packed away so I can't currently test with the multi-OS I've got. I am 99% certain it boots into OS 1.20 without detecting the internal tube, and I expect OS 2.00 is the same (but I doubt I've used that setting more than once).

--Tom
james
Posts: 330
Joined: Tue Aug 15, 2023 8:41 pm
Location: NE Hampshire
Contact:

Re: How To Stop the Tube?

Post by james »

With or without the cartridge, the display is as expected - here’s ‘without’
IMG_7158.jpeg
It looks like something in ARM’s *KILL 8 (Model B MMFS 1.55) is causing the TUBE banner to appear in the wrong place.

I’m not overly familiar with co-pros, and see *HELP reveals both

65C102 TUBE 1.10
and
TUBE HOST 2.30

*UNPLUG seems to be working as *DISC gives me Bad command and *. flaps the tape relay. But the co-pro is still there
james
Posts: 330
Joined: Tue Aug 15, 2023 8:41 pm
Location: NE Hampshire
Contact:

Re: How To Stop the Tube?

Post by james »

Hmm. This thread might help. I'll have a try tomorrow FX Call to turn off 2nd Processor on Model B
User avatar
jgharston
Posts: 5319
Joined: Thu Sep 24, 2009 12:22 pm
Location: Whitby/Sheffield
Contact:

Re: How To Stop the Tube?

Post by jgharston »

BeebMaster wrote: Wed Feb 21, 2024 5:39 pm This is interesting because on the one hand I would expect OS 1.20 to recognise the Tube simply because the second processor is "powered on" (as there's no way exactly of unpowering an internal co-processor) but on the other hand I wouldn't expect OS 1.20 to know to look for a second processor on the internal Tube interface.
To the Tube code there's no such thing as the "internal" or "external" Tube. It's just there at &FEFx. It's a bit in the IOACC register that determines where access to &FEFx goes to, so switching to pre-MOS3 will access whatever the hardware was set to before you pressed BREAK.

There are transient commands to temporarily and semi-permanently enable/disable the Tube here: TubeUtils.
james wrote: Wed Feb 21, 2024 6:43 pm I’m not overly familiar with co-pros, and see *HELP reveals both
65C102 TUBE 1.10
and
TUBE HOST 2.30
The first one is the Tube Client responding, the next one is the Tube Host responding after the client has passed the command over to the host.

Code: Select all

$ bbcbasic
PDP11 BBC BASIC IV Version 0.45
(C) Copyright J.G.Harston 1989,2005-2024
>_
james
Posts: 330
Joined: Tue Aug 15, 2023 8:41 pm
Location: NE Hampshire
Contact:

Re: How To Stop the Tube?

Post by james »

Ah. Thanks for the pointer to the TubeUtils.

*TUBE OFF followed by *TEST65 tells me "Not running on Tube"

[Break] then *TEST65 tells me some details, including MEMBOT=&0800

On the other thread FX Call to turn off 2nd Processor on Model B, the OP mentions exactly this and you (that is, JGH) provided the source for NOTUBE. So I've given that a whirl ...

*NOTUBE then [Break] then *TEST65 tells me "Not running on Tube" and PAGE is a (surprising!) &2100. BUT the "Acorn TUBE 65C102..." banner is still there!

NB: This is on OS 1.20.
james
Posts: 330
Joined: Tue Aug 15, 2023 8:41 pm
Location: NE Hampshire
Contact:

Re: How To Stop the Tube?

Post by james »

AAAHH it's MMFS what dunnit!

Using Advanced ROM Manager's *KILL to zap MMFS, and then *NOTUBE and then a control-break gives me this happily Tubeless view:

notube.jpg
Shame about MMFS. Which begs the question - what do I do about it? DFS behaves "as expected", so why not MMFS?

Thanks JGH for the utilities !
User avatar
hoglet
Posts: 12662
Joined: Sat Oct 13, 2012 7:21 pm
Location: Bristol
Contact:

Re: How To Stop the Tube?

Post by hoglet »

james wrote: Thu Feb 22, 2024 4:11 pm Shame about MMFS. Which begs the question - what do I do about it? DFS behaves "as expected", so why not MMFS?
I've read this thread a couple of times and there's not quite enough detail for me to determine if there is an MMFS bug or not.

If you think there is a bug, then please do create an issue in github:
https://github.com/hoglet67/MMFS/issues

Try to describe the what you think the bug is in as much detail as possible. Does it just pertian to the use of NOTUBE with MMFS, or is it borader than that?

(both MMFS and DFS contain the tube host code, and that's by design)

Dave
james
Posts: 330
Joined: Tue Aug 15, 2023 8:41 pm
Location: NE Hampshire
Contact:

Re: How To Stop the Tube?

Post by james »

hoglet wrote: Thu Feb 22, 2024 4:38 pm
I've read this thread a couple of times and there's not quite enough detail for me to determine if there is an MMFS bug or not.
Thanks - I'm gathering my thoughts - apart from *ROMS telling me "Model B MMFS 1.55" is there anything else you'd need to know about which version it is? The EPROM was supplied with the machine, so I don't know exactly which image was used to create it.

I've tried creating a problem report, let me know if you need more https://github.com/hoglet67/MMFS/issues/37
Last edited by james on Thu Feb 22, 2024 5:47 pm, edited 1 time in total.
User avatar
KenLowe
Posts: 4675
Joined: Mon Oct 18, 2004 5:35 pm
Location: UK
Contact:

Re: How To Stop the Tube?

Post by KenLowe »

james wrote: Thu Feb 22, 2024 4:11 pm AAAHH it's MMFS what dunnit!

Using Advanced ROM Manager's *KILL to zap MMFS, and then *NOTUBE and then a control-break gives me this happily Tubeless view:
What happens if you *KILL DFS instead of MMFS? i.e. is the issue linked to having both file systems (or Tube Host Codes) active at the same time?
james
Posts: 330
Joined: Tue Aug 15, 2023 8:41 pm
Location: NE Hampshire
Contact:

Re: How To Stop the Tube?

Post by james »

KenLowe wrote: Thu Feb 22, 2024 4:48 pm ns if you *KILL DFS instead of MMFS? i.e. is the issue linked to having both file systems (or Tube Host Codes) active at the same time?
Oddness happens. The tube banner is still there, but PAGE is at &1F00 and JGH's *TEST65 utility no longer works.
Last edited by james on Thu Feb 22, 2024 5:43 pm, edited 1 time in total.
User avatar
BeebMaster
Posts: 7379
Joined: Sun Aug 02, 2009 5:59 pm
Location: Lost in the BeebVault!
Contact:

Re: How To Stop the Tube?

Post by BeebMaster »

Would it be worthwhile testing, for comparison purposes, what happens with these tube-killer utilities, and various combinations of ROMs, on a real BBC B with 6502 cheese wedge powered on?
Image
User avatar
sweh
Posts: 3314
Joined: Sat Mar 10, 2012 12:05 pm
Location: 07410 New Jersey
Contact:

Re: How To Stop the Tube?

Post by sweh »

What I found was that if a service ROM wrote a zero to &27A in service call 1 then that seems to prevent everything from seeing the copro exists.

&27A is "Tube presence flag" and is set by the OS start up routines; setting this to zero makes everything else think it's not there. (OSBYTE 234 also can be used to set this).

Setting it in service call 1 normally means you've disabled it before any other ROM detects the Tube is present and goes through the tube initialisation.

I just tested on my model B with matchbox copro and MMFS (hmm, an older version perhaps; 1.48 T). With MMFS in slot 15 and the service ROM in slot 12 then it worked as expected.

I also tested on a Master128 with OS1.20 and an internal CoPro and TurboMMC; that worked the same as well.
Rgds
Stephen
james
Posts: 330
Joined: Tue Aug 15, 2023 8:41 pm
Location: NE Hampshire
Contact:

Re: How To Stop the Tube?

Post by james »

What happen's if you try with JGH's NOTUBE (it's all I've got!). It appears to work. Just the banner if MMFS is running.

Edit: I can’t help thinking that MultiOS would be helped by pairing with a tweaked Integra-B IBOS-type ROM that works in the Master’s hardware.
Attachments
NoTube.ssd
(200 KiB) Downloaded 5 times
User avatar
sweh
Posts: 3314
Joined: Sat Mar 10, 2012 12:05 pm
Location: 07410 New Jersey
Contact:

Re: How To Stop the Tube?

Post by sweh »

If you read the source, JGH's code is writing a 0 to &27A, and hooking into a "break" routine at &287 to make it run each time you press the BREAK key. This is about as close to emulating service call 1 as you can get without a ROM.

His code lives at &39F, and it's not uncommon for other programs to trample on this (eg games) 'cos the OS doesn't use it. So you might sometimes need to power cycle to recover. (I use the same locations for my Manager ROM config and see enough trampling that I added a key-combo "TAB-Break" to reset to defaults).

But it's pretty much the same solution as mine, just I have mine embedded into my Manager ROM so it's always there :-)
Rgds
Stephen
User avatar
jgharston
Posts: 5319
Joined: Thu Sep 24, 2009 12:22 pm
Location: Whitby/Sheffield
Contact:

Re: How To Stop the Tube?

Post by jgharston »

sweh wrote: Thu Feb 22, 2024 6:33 pm (I use the same locations for my Manager ROM config and see enough trampling that I added a key-combo "TAB-Break" to reset to defaults).
Hehe, yes I have Ctrl-CAPS-Break to do similar. :)

Code: Select all

$ bbcbasic
PDP11 BBC BASIC IV Version 0.45
(C) Copyright J.G.Harston 1989,2005-2024
>_
User avatar
Mince
Posts: 524
Joined: Thu Sep 05, 2019 11:25 pm
Location: Cambridge, UK
Contact:

Re: How To Stop the Tube?

Post by Mince »

As an aside to all this, the Master MultiOS from IFEL / Steve Picton has a "Manager" ROM in bank 15 of the MOS 1.20 selection that has *TUBE, *NOTUBE, *EXTUBE and *INTUBE commands that do the equivalent of the Master MOS versions (along with lots of other *CONFIGURE-type things like *INSERT and *UNPLUG), which are battery-backed up separately (I assume somewhere in spare CMOS space, but I've never asked). I don't think the ROM is available separately.
BBC Master— PiTube 3A+ PiVDU, PicoTube, Pi1MHz, MMFS, ANFS, MultiOS
BBC B — Integra ß, PiTube Zero 2W, Pi1MHz, MMFS, DFS, ADFS, ANFS
Electron — Plus 1 w/ AP6 2V2, AP5, PiTube 3A+, Pi1MHz, PRES AP3+4, Elkeconet or ATI/ABR, ElkSD 64/Plus 1
tom_seddon
Posts: 889
Joined: Tue Aug 30, 2005 12:42 am
Contact:

Re: How To Stop the Tube?

Post by tom_seddon »

I temporarily set up my Master Turbo last night and had a quick poke about - the RetroClinic multi-OS I've got (presumably the same one james has - same games as in the screenshot I think) booted into OS 1.20 as normal, no Tube detected. I've no scope for getting files back to the PC for now, so I don't have ROM images to examine on the PC currently, and I could only investigate on the thing itself.

P.~?&FE34 produced a slightly surprising &10, implying that the internal Tube was selected. (I suspect this will be the power-on default.) And yet, no second processor detected, even though surely the onboard DFS should have picked it up. Perhaps the onboard DFS has had the Tube detection code stripped out, not the case with MMFS?

I tried to follow through the DFS service code with Exmon II in OS 2.00 mode, and quickly got a bit lost, but I did notice a NOP:NOP:NOP that suggests at least one patch might have been applied.

MOS 3.20 + *CONFIGURE TUBE booted into the Turbo board. So it was definitely working.

--Tom
james
Posts: 330
Joined: Tue Aug 15, 2023 8:41 pm
Location: NE Hampshire
Contact:

Re: How To Stop the Tube?

Post by james »

In digging around to find what MultiOS was supplied with the computer, I accidentally bent a pin on the carrier board (never let a software person near hardware), so - sigh - no computer at the moment. Maybe an opportunity to try the IFEL MultiOS instead.

Though the original problem was resolved, *NOTUBE and *TUBE OFF did what they say on the tin
User avatar
hoglet
Posts: 12662
Joined: Sat Oct 13, 2012 7:21 pm
Location: Bristol
Contact:

Re: How To Stop the Tube?

Post by hoglet »

james wrote: Fri Feb 23, 2024 5:17 am In digging around to find what MultiOS was supplied with the computer, I accidentally bent a pin on the carrier board (never let a software person near hardware), so - sigh - no computer at the moment.
I'm feeling a bit guilty here, because it was me that asked about the MultiOS version. I assumed (wrongly) because it contained the latest MMFS version, and some other unusual ROMs, that you had built this image up yourself. But looking more closely, MMFS is in a seperate ROM in slot 8.

This can usually be repaired by soldering a piece of thin solid core wire to what remains of the pin. There is an ABUG at Camberly in April, which I think is not too far from you. I'm sure someone there would have a go at repairing it for you. Or you might find that Mark Haysman would help as well.

Dave
james
Posts: 330
Joined: Tue Aug 15, 2023 8:41 pm
Location: NE Hampshire
Contact:

Re: How To Stop the Tube?

Post by james »

hoglet wrote: Fri Feb 23, 2024 7:30 am I'm feeling a bit guilty here, because it was me that asked about the MultiOS version.
Don't worry - I'm the one who was clumsy - and you asked a fair question! 40 years ago swapping ROMs in my BBC B seemed easy. But that was then. I've since realised I bought a MOS 3.20 ROM "just in case" (of what, I don't know) so I should be able to get it running again if needed.
I assumed (wrongly) because it contained the latest MMFS version, and some other unusual ROMs, that you had built this image up yourself. But looking more closely, MMFS is in a seperate ROM in slot 8.
Both were installed in the (refurbished) computer when I bought it.
multios.jpeg
On the back it says www.ukwebb.net, so I've opened negotiations with him for a replacement.
This can usually be repaired by soldering a piece of thin solid core wire to what remains of the pin.
Seems I do own a soldering iron. But neither it nor I are up to soldering wires onto pins.

When it's running again, I'm toying with the idea of carefully removing the MMFS ROM to see what happens. I've an IFEL ROM/RAM cartridge, so can install another ROM image there, if needed.
User avatar
Ukwebb
Posts: 775
Joined: Sat Apr 10, 2021 12:38 pm
Contact:

Re: How To Stop the Tube?

Post by Ukwebb »

I discovered the same issue a little while ago, and its because of the tube code being in the mmfs ROM, so built (with hoglets help) a version of MMFS without tube code.
BBC Bs, Master 128s, Master Compact, and Electrons, and an A3000 with an ARM3 :)

Don’t Panic and Always Carry a Towel
james
Posts: 330
Joined: Tue Aug 15, 2023 8:41 pm
Location: NE Hampshire
Contact:

Re: How To Stop the Tube?

Post by james »

The Master is working again (thanks ukwebb for quick delivery of replacements!)

I've removed the MMFS ROM from the motherboard and there's no longer any Tube banner at boot into OS 1.20, which leads me to think that the original MultiOS DFS probably has the Tube code disabled/removed.

hoglet's update via github suggests that with just DFS & NOTUBE then the Tube banner is still present even though PAGE is no longer at &800. So MMFS is working the same as DFS in this respect.

Unless there's a different software off switch that MMFS/DFS respect, I suspect the answer is to compile a copy of MMFS with the Tube code disabled. Though that's easier said than done!
User avatar
BigEd
Posts: 6261
Joined: Sun Jan 24, 2010 10:24 am
Location: West Country
Contact:

Re: How To Stop the Tube?

Post by BigEd »

I bet there's a one-byte patch...
james
Posts: 330
Joined: Tue Aug 15, 2023 8:41 pm
Location: NE Hampshire
Contact:

Re: How To Stop the Tube?

Post by james »

Well, with a certain amount of running around (the Master is downstairs and the Mac upstairs) and compiling the latest beebasm 1.10 and building a tubeless-MMFS*, there is no longer any TUBE banner and page is at &1900 after nobbling DFS.

*change _TUBEHOST_=TRUE to _TUBEHOST_=FALSE in top_MMFS.asm, then run "build.sh MMFS"

Thanks to all for the help and guidance
james
Posts: 330
Joined: Tue Aug 15, 2023 8:41 pm
Location: NE Hampshire
Contact:

Re: How To Stop the Tube?

Post by james »

In former emploment, finding support tickets that matched a current problem but contained nothing more than "problem resolved, closing ticket" used to be the bane of my life. ](*,)

The permanent solution for me has been to buy an IFEL MultiOS, containing a utility rom for OS 1.20 which provides configuration and management commands similar to the Master's *CONFIG, *UNPLUG etc.

Thanks to it, *TUBE and *NOTUBE now work to switch the co-pro on and off in 'Beeb' mode.
Post Reply

Return to “8-bit acorn software: other”