Elite Executive doesn't run

reminisce about bbc micro & electron games like chuckie egg, repton, elite & exileRelated forum: adventures


Post Reply
User avatar
guddler
Posts: 515
Joined: Sat Apr 04, 2009 9:43 am
Location: W.Somerset
Contact:

Elite Executive doesn't run

Post by guddler » Thu Aug 23, 2018 12:26 am

My copy of Elite won't run. It just fails with "Line 1450".

I'm running a Master 128 with internal DC, ADFS compact flash with RetroClinic's game menu as supplied. The co-pro is a RetroClinic SuperCo 6502i. I'm sure it has worked in the past but I can see a post from 2013 where I very briefly glance over the fact it was doing this then. I think I've got the co-pro set to 12Mhz but it does it regardless of whether I try 4, 8, 12 or 16Mhz.

Here is a screenshot (excuse the mess I'm in the middle of re-capping the PSU):
elite-squashed.png
Is it by any chance the same issue as here:
viewtopic.php?f=2&t=9243

I have a pic of '*ROMS' output too if necessary.
Last edited by guddler on Thu Aug 23, 2018 12:27 am, edited 1 time in total.

User avatar
danielj
Posts: 6646
Joined: Thu Oct 02, 2008 4:51 pm
Location: Manchester
Contact:

Re: Elite Executive doesn't run

Post by danielj » Thu Aug 23, 2018 7:16 am

Looks like it - set up the directories that BeebMaster talks about for running the 2nd processor version.


d.

User avatar
hoglet
Posts: 7597
Joined: Sat Oct 13, 2012 6:21 pm
Location: Bristol
Contact:

Re: Elite Executive doesn't run

Post by hoglet » Thu Aug 23, 2018 8:53 am

guddler wrote:
Thu Aug 23, 2018 12:26 am
The co-pro is a RetroClinic SuperCo 6502i.
Could you post a decent close-up photo of the Co Pro?

It uses a real WDC (Western Design Centre) W65C02 doesn't it?

This is most likely to be an ADFS issue, but....

I think we tried running Tube Elite on one of these at an ABUG meeting last year (owned by Alex - sixxdog_uk). It didn't work... and crashed at a similar point. We then swapped to PiTubeDirect and that worked fine with the same disc image.

It might be worth checking whether Mark Haysman ever tested this with Tube Elite. You would have thought so, given that's the main use of these things!

It's possible that Tube Elite makes assumptions about the Tube implementation (e.g. the depth of the VDU FIFO). I'm not sure if Mark's Tube implementation (in the Xilinx Spartan 3 FPGA) has the full 24-bit VDU FIFO.

Can you try using the normal disc image from RAMFS?
AC4-r1-0.zip
(123.27 KiB) Downloaded 8 times
To run, you just type *TUBEELT

Dave
Last edited by hoglet on Thu Aug 23, 2018 8:57 am, edited 3 times in total.

User avatar
kieranhj
Posts: 725
Joined: Sat Sep 19, 2015 10:11 pm
Location: Farnham, Surrey, UK
Contact:

Re: Elite Executive doesn't run

Post by kieranhj » Thu Aug 23, 2018 10:32 am

I have an original Master / 2nd Processor disc version of Elite (Superior Software release) and it doesn't boot on my genuine Master Turbo! I found another 2nd processor disc image from STH (can't remember which one) and it worked fine, so not sure what's going on here. Definitey a few different versions floating around.
Bitshifters Collective | Retro Code & Demos for BBC Micro & Acorn computers | https://bitshifters.github.io/

User avatar
hoglet
Posts: 7597
Joined: Sat Oct 13, 2012 6:21 pm
Location: Bristol
Contact:

Re: Elite Executive doesn't run

Post by hoglet » Thu Aug 23, 2018 10:37 am

I found an old post from Mark that says:
a) Tube Elite does work, even with a 1-byte VDU FIFO
b) He intends to increase this to the full 24 bytes at some point

viewtopic.php?p=30262#p30262
The firmware may go through a few more revisions, specifically to add the full VDU FIFO which is something I want to do once I'm happy the core is stable. For the moment it's got a 1 byte jobbie on Register 1, which doesn't impede performance too much, Elite is still virtually unplayable at 16MHz!
So it seems it should work....
Last edited by hoglet on Thu Aug 23, 2018 10:37 am, edited 1 time in total.

User avatar
guddler
Posts: 515
Joined: Sat Apr 04, 2009 9:43 am
Location: W.Somerset
Contact:

Re: Elite Executive doesn't run

Post by guddler » Thu Aug 23, 2018 10:52 am

Just catching up.

I'm not sure of the exact CPU that's in it but yes, it uses a WDC something or other so yes, it is that one. Before you get to the screen in the picture you get a screen that Mark has added which says it works with ADC / CF and second processors but if you use option 3 to cat the directory of load files you will get a file not found error. And sure enough, with tube disabled that is accurate. So it's definitely meant to get past this point. And I'm sure I've seen Mark demoing it running all day long at one of the shows we were exhibiting at - from memory the one at Bletchley Park?

I've got the caps for the PSU now so once I've done that I'll check the directory structure according to that other thread. It certainly looks like the kind of error where it's trying to change directory in DFS or something like that.

I should have mentioned but I have also tried running "FADFS" which off the top of my head is a mode that is meant to force / fake floppy accesses. That may not be wholly accurate as I am so rusty on this but it's something like that. Didn't help anyway.

I have considered getting a PiTube but right now that seems incredibly wasteful given I've no real use for it and already have this one. Maybe next month.

User avatar
hoglet
Posts: 7597
Joined: Sat Oct 13, 2012 6:21 pm
Location: Bristol
Contact:

Re: Elite Executive doesn't run

Post by hoglet » Thu Aug 23, 2018 11:04 am

guddler wrote:
Thu Aug 23, 2018 10:52 am
I have considered getting a PiTube but right now that seems incredibly wasteful given I've no real use for it and already have this one. Maybe next month.
You play Zork on the Z80 Co Pro, or any of the other fine Infocom adventures that are available for CP/M.

User avatar
guddler
Posts: 515
Joined: Sat Apr 04, 2009 9:43 am
Location: W.Somerset
Contact:

Re: Elite Executive doesn't run

Post by guddler » Thu Aug 23, 2018 11:09 am

CP/M would be a bit of a memory lane trip as I used to have both a 464 with disk unit that I'm sure was CP/M and also some early Zenith x86 thing that was as well. Like I say, maybe next month. IIRC, this tube cost me quite a bit, although I guess you can never expect to recoup costs on this kind of thing.
Last edited by guddler on Thu Aug 23, 2018 11:16 am, edited 1 time in total.

User avatar
hoglet
Posts: 7597
Joined: Sat Oct 13, 2012 6:21 pm
Location: Bristol
Contact:

Re: Elite Executive doesn't run

Post by hoglet » Thu Aug 23, 2018 11:30 am

guddler wrote:
Thu Aug 23, 2018 10:52 am
I should have mentioned but I have also tried running "FADFS" which off the top of my head is a mode that is meant to force / fake floppy accesses. That may not be wholly accurate as I am so rusty on this but it's something like that. Didn't help anyway.
*FADFS just allows ADFS to start without actually accessing the disk. It's nothing to do with faking floppy access.

You should be able to try the disc image I posted earlier, assuming you have Mark's RAMFS filing system for Data Centre in your Master:

Code: Select all

*RAM
*IMPORT AC4-r1-0.ssd
*TUBEELT
Dave

User avatar
guddler
Posts: 515
Joined: Sat Apr 04, 2009 9:43 am
Location: W.Somerset
Contact:

Re: Elite Executive doesn't run

Post by guddler » Thu Aug 23, 2018 11:43 am

Thank you - I'll give it a try. You've also just saved me from having to dig out the manual to remember how to import things =D>

So many little nuances (if that's the right word) in the Acorn world to have to remember! Strangely though, it's really giving me the itch to try and get back into this and do something with it again. I had such grand plans for the co-pro that are still just about up in my head but since BBC basic is like double dutch to me I was learning the assembler route and altogether there was just so much learning involved that when my job went a bit crazy it all fell by the wayside.

User avatar
guddler
Posts: 515
Joined: Sat Apr 04, 2009 9:43 am
Location: W.Somerset
Contact:

Re: Elite Executive doesn't run

Post by guddler » Thu Aug 23, 2018 12:46 pm

So, I need to crack on with work for now, but I've been flicking through some threads on the Co-Pro (sorry, bit drifting off for this thread). I've just been through the Wiki page for it and mostly understand the technical stuff that is listed in the what it is and how it works parts. I'm fine with the concept as it ties in exactly with what I always planned to have a crack at, but...

I'm interested in a number of more high level things. Like, how do you write stuff that runs on the 2nd Processor? Let's say that you have the Arm core running. Presumably, that means that you need to develop an Arm based program that runs on the Pi and spits "stuff", be that video data or whatever down the FIFO buffers to the host and then there is some code running on the host that does something with the data it receives.

Do you write the Arm code on the BBC host? Surely not. Assuming you write it on Mac or PC, how do you get it onto the Pi (Zero or 3). Which then ties into the fact I was going to ask if there was any use for the W in Pi Zero-W, but given we're not running the Pi's usual OS, I'm guessing we can't SSH into it so I'm guessing the Wireless is pretty useless?

This is where it all gets kind of muddy and I'm wondering if there are already threads, sites, or wiki's that explain it before I start shooting off a bunch of questions in new threads?

My ideal starter for 10 would be to know how to go about creating a program on the Pi (Parasite?) that just dumps data to the Beeb (Host?) and the Beeb displays it on the screen. I don't want actual code that does it, I want to get there by failing and repeating myself, but I want to understand the, err, build cycle? first.

Something further that kind of confuses me, is if you have the Pi3 with what? 4 cores? Is it not possible to implement a generic ULA running on one core, or two, however many it takes, that is just exposed as a port under the PI's OS (be that Linux or whatever) and then you write software that just bangs data to it? I'm thinking from the Wiki page that the answer to this is that you can't due to speed problems.

User avatar
hoglet
Posts: 7597
Joined: Sat Oct 13, 2012 6:21 pm
Location: Bristol
Contact:

Re: Elite Executive doesn't run

Post by hoglet » Thu Aug 23, 2018 1:06 pm

Just in case you didn't stumble across it, BigEd started a thread covering some of the principles behind Second Processors and Acorn's Tube implementation:
viewtopic.php?f=3&t=14211

An important point is that just as the Beeb's MOS exposes a set of features via a well defined API (e.g. OSWRCH to write a character to the screen), then so does each of the Co Processors. And for the 6502 Co Processor, that API is largely identical to the Beeb MOS API. So a correctly written program should run on either the host or the 6502 Co Pro.

It gets more complicated with non-6502 Co Pros, because the API cannot truly be identical, but it can be conceptually similar. So in no case is an application required to dabble with the hardware (i.e. the Tube FIFOs) directly.

Dave
Last edited by hoglet on Thu Aug 23, 2018 1:13 pm, edited 4 times in total.

User avatar
guddler
Posts: 515
Joined: Sat Apr 04, 2009 9:43 am
Location: W.Somerset
Contact:

Re: Elite Executive doesn't run

Post by guddler » Thu Aug 23, 2018 1:16 pm

Yes read through that thread earlier. I'll go through it again tonight.

I didn't really come away from it any the wiser as to how to actually start and indeed a lot of the thread was talking about Spectrum's :)

I was going to comment on the comment about the Vampire "cheating" (which it doesn't really since the Amiga was designed that way) but I didn't want to resurrect an old thread.

User avatar
hoglet
Posts: 7597
Joined: Sat Oct 13, 2012 6:21 pm
Location: Bristol
Contact:

Re: Elite Executive doesn't run

Post by hoglet » Thu Aug 23, 2018 1:54 pm

guddler wrote:
Thu Aug 23, 2018 12:46 pm
My ideal starter for 10 would be to know how to go about creating a program on the Pi (Parasite?) that just dumps data to the Beeb (Host?) and the Beeb displays it on the screen. I don't want actual code that does it, I want to get there by failing and repeating myself, but I want to understand the, err, build cycle? first.
You first need to decide which Co Processor you are intending to answer this "Ideal Starter for 10" question on. That's because the build cycle is actually different for each Co Processor. i.e. the tools for building programs that run on the ARM 2 Co Pro are different to the tools used for the Z80, and for the 32016, etc. This is especially true if you want to try any of the compilers, but there are easier ways to get started.

(I think it's actually helpful to forget that PiTubeDirect is running on a Pi, because you are not actually developing new native code for the Pi.)

If there is a BBC Basic available for the Co Pro you choose, that's a good starting point, because it contains a built-in assembler that is the quickest way to write assembly code for the Co Pro. The program you end up writing is actually independent of BBC Basic, which is just being used a s convenient assembler.

There is a mature version of BBC Basic (including an assembler) available for the following Co Pros:
- the 6502 (Co Pro 0)
- the Z80 (Co Pro 1)
- the ARM2 (Co Pro 12)
- the 32016 (Co Pro 13)

Then, start with something really simple:
- a program to print "H"
- extend it to print "HE"
- extend it further to include a loop that prints "HELLO WORLD" from a string stored in memory.

That probably satisfies your brief of dumping data that is store in memory to the host.

Dave

User avatar
BigEd
Posts: 2139
Joined: Sun Jan 24, 2010 10:24 am
Location: West
Contact:

Re: Elite Executive doesn't run

Post by BigEd » Thu Aug 23, 2018 8:57 pm

Indeed, the important perspective is that once you've chosen your second processor and connected it up (or in the case of the Pi, connected it up and then chosen the model) the original 8 bit machine with the keyboard, screen, and disk drives is just a front end machine. Any program you *RUN, any file you *LOAD, or memory area you *SAVE, is (normally) going to be happening in the second processor. It's like a remote login: you're sat at the Beeb or the Master, but the action takes place in the second processor. That's where you edit, compile, run, and when you save, it goes to the host machine's storage. When you print characters, it goes to the host machine for display, printing, spooling. When you wait for input, it comes from the host machine's keyboard.

So, just as the Pi disappears, also the Beeb or Master disappears. You're dealing with a Z80 running Basic, or CP/M, or a 32016 running PanOS, or Basic, and so on.

User avatar
guddler
Posts: 515
Joined: Sat Apr 04, 2009 9:43 am
Location: W.Somerset
Contact:

Re: Elite Executive doesn't run

Post by guddler » Thu Aug 23, 2018 9:23 pm

Thanks both for the good explanation! I also had a good look about on the internet and found an Acorn application note 004 which together with what you have all said here goes a LONG way towards painting the whole picture.

So my reckoning is that first of all I need to get my assembler book out and remember how to do something simple in assembler (shouldn't take too long). Then when I've refreshed my mind on that, pick the 6502 co-pro (because its what I have in my physical machine for now) and try to do what we have discussed here. Then I can try and be more exotic once I've sussed that out. Finally, it sounds like it's worth investing in the level shifter and a Pi :)

To get back to the subject of the thread. I'm just up in my "shed" now at the Master and am giving the image linked above a go. I'll report back.

User avatar
guddler
Posts: 515
Joined: Sat Apr 04, 2009 9:43 am
Location: W.Somerset
Contact:

Re: Elite Executive doesn't run

Post by guddler » Thu Aug 23, 2018 10:12 pm

Just to report back, the image from 'hoglet' above works fine with my co-pro (which reports as a 65c102 incidentally).

I'll have to see if I can follow the other thread and copy it onto my ADFS compact flash "hard drive" now.

Tube-wise, I'm going to dig out some books and BeebEm

Post Reply