|
Post by gtoal on Jun 28, 2022 15:19:17 GMT -5
Embarrassing to admit, but I've only recently become aware of the 6309 and its rather nice upgrades to the 6809 instruction set. Has anyone here ever tried running one in a Vectrex? (they power up into 6809 compatibility mode by default so on what I've read so far it looks like it ought to be possible, assuming an appropriate clock speed is used).
|
|
|
Post by D-Type on Jun 28, 2022 15:27:53 GMT -5
IIRC, Jason Kopp tried one in 6309 mode, I think the sound pitch went up and I think he put a video on YouTube. They're used as an upgrade on the TRS-80 Coco for the NitrOS9 project. I think they'd make a great upgrade for the Vectrex, you'd have to one-off tweak the BIOS to work with all the new faster opcodes, but then on it's a performance boost all the way. Or write your own BIOS equivalent!
|
|
|
Post by Peer on Jun 29, 2022 6:08:01 GMT -5
I had not thought of this so far, but that would make for a pretty cool student project: upgrading a console with a 6309. Does anyone know where to get/buy a 6309 (haven't looked yet myself and have no time right now)? Does is fit into the 6809 socket?
|
|
|
Post by Peer on Jun 29, 2022 6:55:52 GMT -5
|
|
|
Post by D-Type on Jun 29, 2022 7:39:56 GMT -5
Hmm, that's the video I was referring to in my earlier post. I thought it was a 6309 test as well, but maybe I'm mistaken.
Anyway, there are also a few 6809 to 6309 Coco videos on YouTube and the NitrOS9 operating system has source code available for both, so you could see the differences there.
As to whether you can increase the CPU speed, I see no reason why you couldn't do it, you just have to do lots of testing and rewrite the BIOS functions if you wanted to use them.
It's a shame the CPU is soldered in, if it wasn't, 6309 might be a more popular upgrade and some software might get written for it...like a "niche level of niche" :-)
|
|
|
Post by Peer on Jul 5, 2022 1:55:29 GMT -5
I really would like to give this experiment a try. Right now, I am having difficulties in trying to obtain/buy a 6309. In addition, there seem to be several variants, and I have not yet had the time to locate the datasheets and to find out the differences and which one could be the most fitting for the Vectrex hardware (speed? internal/external clock? voltage?):
- HD6309ECP, HD6309EP, HD6309ERP, HD6309P, HD6309RP
- HD63C09E, HD63C09ECP, HD63C09EP, HD63C09ERCP, HD63C09ERP
Anyone here who is more knowledgeable than me and who could help? Help is much appreciated.
Cheers, Peer
|
|
|
Post by Peer on Jul 6, 2022 7:26:22 GMT -5
I talked to a colleague of mine, and now I see a bit more clearly regarding the differences of the various processor variants. The same colleague expressed some vague interest in trying to completely rebuild the digital logic board of the Vectrex with modern parts (and probably flashable rom and ram chips), which would be another nice experiment (in the sense of remove the old logic board from a console, "plug in" the new board, and it just runs). I can only guess that someone out there must have already tried something like this. I will have to investigate later.
Cheers, Peer
|
|
|
Post by Peer on Aug 29, 2022 12:52:05 GMT -5
For those who are possibly also interested in this:
My 6309 experiment is actually taking shape. I have set up a project page where I will (try to) document the progress:
Many Cheers, Peer
|
|
|
Post by D-Type on Aug 29, 2022 13:12:36 GMT -5
Good to see progress! I read/heard somewhere recently that the 6809E chip was requested by Tandy so they could have different clock circuitry for their CoCo machine. The 6309's that I've seen for sale have been mostly the E variant, not the non-E variant needed for Vectrex, and they are popular with CoCo NitrOS9 enthusiasts. I also heard the Vectrex could use the E variant with some additional components.
|
|
|
Post by Peer on Sept 5, 2022 2:37:28 GMT -5
Not really an update or some real progress, but I still want to keep those who are interested informed:
I have opened the console, but the actual soldering still has to be done. Since the console is open at this stage anyway, I want to do some cleaning first (though it is in good shape and there is not much dust inside) and also check the capacitors and probably replace some of them for new ones. Also, I have added two new pictures to the web page.
Cheers, Peer
|
|
|
Post by D-Type on Sept 5, 2022 3:31:42 GMT -5
A friend of mine, Francois Laagel, has built a 6309 computer running this own implementation of Forth '79. There is a Forth benchmark website where he's posted his results: theultimatebenchmark.org/I've actually ran a bunch of these tests on my Vectrex using VecForth (i.e. CamelForth ANS-'94) for comparison, but not published them yet. Because the Forths are completely different, direct CPU comparisons are not possible. However, the results for 6309 and the Vectrex 6809 tests I did actually are comparable! There are other Forth results listed there for many other CPU's, including other 8-bits. Worth a look.
|
|
|
Post by Peer on Sept 15, 2022 6:52:41 GMT -5
Update:
The MC6809 has been unsoldered and in its stead now the 40 pin socket is soldered, as can be seen on some new pictures which I have added to the project web page. As a next step, the Hitachi 6309 needs some minor cleaning (removal of traces of old soldering tin) before it can be inserted, and some dust needs to be cleaned from other parts of the board.
Cheers, Peer
|
|
|
Post by Peer on Sept 16, 2022 4:46:50 GMT -5
Update:
I have cleaned the console from remaining dust and inserted the 6309. Works fine For now in default 6809-emulation-mode. Updated the project web page and added some new pictures. Next step is to do some real 6309-native-mode experiments.
Cheers, Peer
|
|
|
Post by Peer on Sept 17, 2022 10:37:18 GMT -5
Next Update:
I wrote a small utility that checks whether a 6809 or a 6309 processor is present in the console. The check is a modified and simplified version of the method proposed in "The 6309 Book" by Chris Burke. It relies on the assumption that invalid opcodes are executed as NOPs on the 6809. I could not find any source that officially verifies this assumption to be true, but the method works fine on my real world consoles, see picture above. Fun facts: The program also works fine in VIDE and Dr. Snuggles web emulator, but it causes ParaJVE and Vectrex Online Vs. 0.2.6.0 to crash. I have added a download link to the project web page. If you try the program, please let me know if the result is correct for your Vectrex (please also indicate the BIOS version and the serial number of your console).
Cheers, Peer
|
|
|
Post by Peer on Sept 22, 2022 6:45:11 GMT -5
Ok, these experiments might be purely academic, and I am not sure if this is of general interest for others as well, but nevertheless here is another update:
2022/09/20: wrote and tested some utility functions for setting the processor mode 2022/09/21: implemented a method to run arbitrary vectrex binaries in 6309-native mode
2022/09/22: some quick tests running Mine Storm, Berzerk, and Spinball in 6309-native mode
Cheers, Peer
|
|