Home
JAQForum Ver 20.06
Log In or Join  
Active Topics
Local Time 17:23 29 Mar 2024 Privacy Policy
Jump to

Notice. New forum software under development. It's going to miss a few functions and look a bit ugly for a while, but I'm working on it full time now as the old forum was too unstable. Couple days, all good. If you notice any issues, please contact me.

Forum Index : Microcontroller and PC projects : CMM2 - Go Go Go!!!!

Author Message
CaptainBoing

Guru

Joined: 07/09/2016
Location: United Kingdom
Posts: 1983
Posted: 07:51am 18 Nov 2021
Copy link to clipboard 
Print this post

https://www.bbcelite.com/

(not for me but you CMM2 guys seem to dig this sort of thing)
Edited 2021-11-18 17:52 by CaptainBoing
 
thwill

Guru

Joined: 16/09/2019
Location: United Kingdom
Posts: 3807
Posted: 10:17am 18 Nov 2021
Copy link to clipboard 
Print this post

If only I had the time.

Best wishes,

Tom
Game*Mite, CMM2 Welcome Tape, Creaky old text adventures
 
Mixtel90

Guru

Joined: 05/10/2019
Location: United Kingdom
Posts: 5648
Posted: 11:03am 18 Nov 2021
Copy link to clipboard 
Print this post

As the routines are explained in detail, I can see that this might be of use to a lot of people.
Mick

Zilog Inside! nascom.info for Nascom & Gemini
Preliminary MMBasic docs & my PCB designs
 
Calli
Regular Member

Joined: 20/10/2021
Location: Germany
Posts: 74
Posted: 11:57am 19 Nov 2021
Copy link to clipboard 
Print this post

Time an lack of ASM experience...

I always wondered (I played the C64 version days long) how they did that hidden line thingy on these computers. I did once a project where I could send 3d-lines to an oscilloscope and wished to do this...

https://youtu.be/iETq18F3pug?t=104

Carsten
 
Mixtel90

Guru

Joined: 05/10/2019
Location: United Kingdom
Posts: 5648
Posted: 12:28pm 19 Nov 2021
Copy link to clipboard 
Print this post

The old Vectrex game drove the X and Y plates and the cathode of the CRT directly IIRC. That allowed very fast control over the line with instant on and off at the beginning and end. It was a true vector display.

Not all oscilloscopes give you that much access now, particularly to a blanking control input.

The BBC did its line drawing using integer variables, which ran a lot faster than FP variables on that machine. They used a simple XOR command to plot to the screen and ignored the last dot of closed shapes so that it didn't get erased again. The routines appear to be in BASIC, not asm.
Mick

Zilog Inside! nascom.info for Nascom & Gemini
Preliminary MMBasic docs & my PCB designs
 
Volhout
Guru

Joined: 05/03/2018
Location: Netherlands
Posts: 3422
Posted: 12:43pm 19 Nov 2021
Copy link to clipboard 
Print this post

Old oscilloscopes (CRT type) needed beam blanking to get from A to B invisible (in fact "without leaving a trace"). CRT based TV's have the same (Horizontal blanking and vertical blanking). Hence these signals names on the VGA connector (original CRT based).

Modern (LCD) type displays can go from A to B directly (addressable pixel based). That is why there generally is no Z-input (blanking input) on modern scopes.
Edited 2021-11-19 22:45 by Volhout
PicomiteVGA PETSCII ROBOTS
 
Mixtel90

Guru

Joined: 05/10/2019
Location: United Kingdom
Posts: 5648
Posted: 01:35pm 19 Nov 2021
Copy link to clipboard 
Print this post

I miss spot wheel patterns for frequency measurement. lol
Mick

Zilog Inside! nascom.info for Nascom & Gemini
Preliminary MMBasic docs & my PCB designs
 
Calli
Regular Member

Joined: 20/10/2021
Location: Germany
Posts: 74
Posted: 02:09pm 20 Nov 2021
Copy link to clipboard 
Print this post

  Mixtel90 said  The old Vectrex game drove the X and Y plates and the cathode of the CRT directly IIRC. That allowed very fast control over the line with instant on and off at the beginning and end. It was a true vector display.

Not all oscilloscopes give you that much access now, particularly to a blanking control input.

The BBC did its line drawing using integer variables, which ran a lot faster than FP variables on that machine. They used a simple XOR command to plot to the screen and ignored the last dot of closed shapes so that it didn't get erased again. The routines appear to be in BASIC, not asm.


To be clear, these videos are directly from my project but it uses a method from Trammell Hudson, which draws visible lines slow and the movements very fast and works on every scope! I did games and some Demos where I feed 3D-Graphic from the Blender viewport to it. https://trmm.net/V.st/ for the code, it uses a Teensy >3.x and DA-Chips.

EDIT: better link: https://www.heise.de/make/artikel/Retro-Spiele-auf-dem-Oszilloskop-3908332.html

https://www.heise.de/select/make/2017/6/1513978999984951

I need to look closer to the code of Elite, it uses Basic?!!?!?!?! wow.

Carsten
Edited 2021-11-21 00:11 by Calli
 
karjo238
Regular Member

Joined: 12/10/2018
Location: New Zealand
Posts: 54
Posted: 11:48pm 22 Nov 2021
Copy link to clipboard 
Print this post

If I return to university next year, I'll have a little bit of spare time, and this is the kind of thing I'd love to get my teeth into.

Thanks for the link in any case. That website is absolutely fascinating  
 
SimpleSafeName

Senior Member

Joined: 28/07/2019
Location: United States
Posts: 284
Posted: 02:55pm 23 Nov 2021
Copy link to clipboard 
Print this post

  Calli said  I need to look closer to the code of Elite, it uses Basic?!!?!?!?! wow.

Carsten


If there is any I haven't come across it. All ASM so far.
 
Mixtel90

Guru

Joined: 05/10/2019
Location: United Kingdom
Posts: 5648
Posted: 04:19pm 23 Nov 2021
Copy link to clipboard 
Print this post

Yep. All ASM.  :(  My mistake, sorry.

This section had me confused as it shows how things were done, but line drawing (which is what I was interested in at the time) is shown written in BASIC.
https://www.bbcelite.com/deep_dives/
Mick

Zilog Inside! nascom.info for Nascom & Gemini
Preliminary MMBasic docs & my PCB designs
 
CaptainBoing

Guru

Joined: 07/09/2016
Location: United Kingdom
Posts: 1983
Posted: 05:11pm 23 Nov 2021
Copy link to clipboard 
Print this post

Some of the code that I saw was contained in Beeb Basic inline assembler ASM[...] statements, so yeah, not really basic but using it as a container.

35 years ago, my then employer used Amstrad CPC6128s (suitably gutted) as controllers for RADAR consoles they manufactured - it was an inexpensive, well-thought out & engineered Z80 platform with upto a MB of RAM, the same on sideways ROMs with FAR CALLing and easy IO expansion and the PSU in the monitor would go down to 90VAC - way better than an IBM PC which meant it was great for deployment in third world contries where the power was flaky.

One of my tried an tested methods on them was to write and debug systems in BASIC and then hand-compile, into assembler, assemble with Cromemco's ASM ported to CP/M. The output HEX file was then loaded to memory with a home-grown basic loader and saved out as a binary. It was a joy due largely to the very well written and documented firmware. I used to love that. It was a nice environment and hand-compiling a basic listing was a lot of fun and paid instant benefits. Although the toolchain looks a nightmare compared to modern methods (well, not too much) it was a breeze and wasn't cumbersome.
Edited 2021-11-24 03:25 by CaptainBoing
 
SimpleSafeName

Senior Member

Joined: 28/07/2019
Location: United States
Posts: 284
Posted: 04:14am 25 Nov 2021
Copy link to clipboard 
Print this post

  Mixtel90 said  Yep. All ASM.  :(  My mistake, sorry.

This section had me confused as it shows how things were done, but line drawing (which is what I was interested in at the time) is shown written in BASIC.
https://www.bbcelite.com/deep_dives/


No worries, the ASM was more interesting anyway. :)

I spent some time on your site tonight, interesting history! I have some Z-80 stuff including a couple of Fox MT-Z80 trainers (a later version to mine can be found here: https://www.youtube.com/watch?v=WiPoMvBL9u4). Plus a decent collection of Z80 chips.
 
Mixtel90

Guru

Joined: 05/10/2019
Location: United Kingdom
Posts: 5648
Posted: 08:22am 25 Nov 2021
Copy link to clipboard 
Print this post

Of course, should you do an almost direct copy of the 6502 ASM into MMBasic on the CMM2 you might only need to slow it down a bit to get Elite playable...  :)

There are still bits of the Nascom/Gemini story that I don't think have been told. Probably for legal reasons as some of the people involved may still be around. I would also love to know what happened to the elusive Richard Beal, the writer of the Nascom monitors (and some of the ROMs on the Gemini cards). His Z80 programming was amazing and those EPROMs are a work of programming art. Well worth investigation if you are a fan of Z80 code.
Mick

Zilog Inside! nascom.info for Nascom & Gemini
Preliminary MMBasic docs & my PCB designs
 
Print this page


To reply to this topic, you need to log in.

© JAQ Software 2024