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 : Connect PicomiteVGA to Trs80 CRT
Page 1 of 2 | |||||
Author | Message | ||||
Kawamarad Newbie Joined: 29/01/2024 Location: CanadaPosts: 8 |
Hello all, I am trying to get a B&W picture on a TRS80 CRT with PicomiteVGA. This works fine with the VGA Bitluni routine running on an ESP32. The Bitluni code is configured with a 15.840 Khz pixel clock, but I cannot find any option to get below the regular 25Khz of the PicomiteVGA: consequently, I cannot get any picture on the TRS screen. I do not want to change the original TRS screen with a modern LCD one as I want to keep the touch and feel of the original TRS80 while enjoying the Picomite Basic. Is there is a way to achieve my goal? Thanks for your ideas… Emmanuel. "Écrire des messages en majuscules accélère le traitement informatique" (ChatGPT) |
||||
Mixtel90 Guru Joined: 05/10/2019 Location: United KingdomPosts: 6787 |
There is no existing way to achieve this. The PicoMite is incapable of producing the correct timings unless a chunk of the video handling is re-written. I doubt if you'll get anyone interested in doing that. The best I can suggest is to get a VGA to CV converter, as the input to the TRS-80 monitor is 2V CV (opto-isolated within the monitor). Mick Zilog Inside! nascom.info for Nascom & Gemini Preliminary MMBasic docs & my PCB designs |
||||
Volhout Guru Joined: 05/03/2018 Location: NetherlandsPosts: 4233 |
The old CMM1 can do it. PicomiteVGA PETSCII ROBOTS |
||||
Mixtel90 Guru Joined: 05/10/2019 Location: United KingdomPosts: 6787 |
Yep. I was going to suggest that but they are hardly common and they aren't PicoMite VGAs either. :) Mick Zilog Inside! nascom.info for Nascom & Gemini Preliminary MMBasic docs & my PCB designs |
||||
Rickard5 Guru Joined: 31/03/2022 Location: United StatesPosts: 463 |
OK I'm just a Dumb Texan I'm even from where the Trash-80 is From but what is the CV in a VGA to CV? I may be Vulgar, but , while I'm poor, I'm Industrious, Honest, and trustworthy! I Know my Place |
||||
JohnS Guru Joined: 18/11/2011 Location: United KingdomPosts: 3801 |
Composite Video I expect. John |
||||
Grogster Admin Group Joined: 31/12/2012 Location: New ZealandPosts: 9306 |
Yes, "CV" is usually short for Composite Video when being used in a video-related discussion. B/W composite video is reasonably painless to acheive which is why it was done on the earlier Maximite 1 units, but colour CV is another beast entirely. This has come up on the forums before, and has pretty-much been solved by suggesting that if you NEED to have CV, use one of those VGA-to-CV adaptors - some of them are dirt-cheap these days, and they will convert the video standard for you. ...just don't expect any modern Micromite, Maximite or PicoMite to produce colour CV for you. Smoke makes things work. When the smoke gets out, it stops! |
||||
Kawamarad Newbie Joined: 29/01/2024 Location: CanadaPosts: 8 |
I don't know if the TRS80 CRT could also work in CV, but I managed to get a very stable B&W image in VGA (320 x 240) with a software written by BitLuni's lab on ESP32 and modified by myself, so the "regular" pixel clock is divided by 2 (and parameters like backporch, H & Vsync etc. adapted in the same fashion). I also tried with a hardware converter but the frequency would stay higher than 15.840 Hz. and thus could not be decoded by the CRT (unless you know about a converter on which the parameters could be changed?). Is there is a chance the pixel clock (and other parameters) in the MMBasic could be adapted? I don't know if this is a reasonable idea/request, but could I try different parameters and recompile it by myself? Emmanuel. "Écrire des messages en majuscules accélère le traitement informatique" (ChatGPT) |
||||
Mixtel90 Guru Joined: 05/10/2019 Location: United KingdomPosts: 6787 |
The TRS-80 uses an opto-isolator to pass video data into the circuit. That's because they were adapted from "live chassis" b/w TVs with their whole tuner section stripped out. The TRS-80 provides a 5V supply to power the opto-isolator circuit and a 2V CV signal for the video and synch. The source for MMBasic on the PicoMite is available if you want to play with it, but I doubt if anyone else will be interested - a mono CV output is too specialised. The video timing is generated using one of the PIO devices and video is fed to it from the frame buffer by the second CPU. It isn't a simple system and timing is critical. The original Colour Maximite could be used in either 8-bit colour VGA or mono CV but this function wasn't included in anything else AFAIK. Mick Zilog Inside! nascom.info for Nascom & Gemini Preliminary MMBasic docs & my PCB designs |
||||
Kawamarad Newbie Joined: 29/01/2024 Location: CanadaPosts: 8 |
So far, in order to be sure of the right « formula », I managed to get a « Trs80 model4 » 320x200 display modeline working on the trs80 on an ESP32 by using the Fabgl library, which have for this purpose a very nice program called « Modeline Studio ». Now, I would be ready to try to implement this 320x200 modeline into the MMbasic code, but I have a few questions: - I requested (and received) a link for the source code, but I am confused as to which version to use with regards to the PicomiteVGA. Which is the right one, and are there options to define? - In the source code, which are the files I should examine for my purpose? … Not sure I am technically up to the task, but it’s worth a try! Emmanuel. "Écrire des messages en majuscules accélère le traitement informatique" (ChatGPT) |
||||
JohnS Guru Joined: 18/11/2011 Location: United KingdomPosts: 3801 |
Check you have the Pico SDK and can build its tools. Then github has the details. John |
||||
Mixtel90 Guru Joined: 05/10/2019 Location: United KingdomPosts: 6787 |
I'm afraid I can't help with the source or the mods to it. That's out of my depth. :( Mick Zilog Inside! nascom.info for Nascom & Gemini Preliminary MMBasic docs & my PCB designs |
||||
Volhout Guru Joined: 05/03/2018 Location: NetherlandsPosts: 4233 |
I guess you need to be "up to the task", since the VGA picomite has been "tuned" for 2 years to squeeze every bit of performance out of the video with multiple frame buffers, graphical primitives, sprites, colorspace conversions. When you introduce a new resolution (320x200) that all needs adaptation. Volhout PicomiteVGA PETSCII ROBOTS |
||||
Kawamarad Newbie Joined: 29/01/2024 Location: CanadaPosts: 8 |
I guess you need to be "up to the task", since the VGA picomite has been "tuned" for 2 years to squeeze every bit of performance out of the video with multiple frame buffers, graphical primitives, sprites, colorspace conversions. When you introduce a new resolution (320x200) that all needs adaptation. Volhout I just realize I made a mistake, my old CRT screen is currently handling a 15khz VGA signal at 320x240 (not X200), so this is a resolution already handled natively by the PicomiteVGA, consequently, things *should* be simpler. Unfortunately, in this resolution, as is, the Picomite VGA frequency output seems too fast for the TRS80 hardware. I downloaded and examined the Raspberry Pi source code for MMBasic, my goal being not to fully understand it (way over my head!), but rather find a configuration file where I could add my VGA signal modeline along other ones (here's mine: 320x240_61Hz 6.326 320 328 344 400 240 241 244 261 -HSync -VSync), so It could be taken in account more or less like a new specific resolution (I already did this successfully in the FabGL ESP32 library). I could not find anything related to it, but I am not sure that I examined the right source code. Would anyone have a clue about the right source code to examine and possibly the right file? Emmanuel. Emmanuel. "Écrire des messages en majuscules accélère le traitement informatique" (ChatGPT) |
||||
Mixtel90 Guru Joined: 05/10/2019 Location: United KingdomPosts: 6787 |
I *can* tell you that the video is outputted by the PIO, which I think also generates the sync signals independently of the CPU. CPU2 is used to read the frame buffer and feed the PIO. There is only one output frequency AFAIK. Mode 2 is obtained by pixel doubling from Mode 1. It is using half the frame buffer for the display and the other half for the additional colour information, effectively. Mick Zilog Inside! nascom.info for Nascom & Gemini Preliminary MMBasic docs & my PCB designs |
||||
JohnS Guru Joined: 18/11/2011 Location: United KingdomPosts: 3801 |
It's hard to do what the PicomiteVGA does and I expect there is no such file. If you're especially keen, keep reading the code to understand how it works. John |
||||
Mixtel90 Guru Joined: 05/10/2019 Location: United KingdomPosts: 6787 |
The PicoMite VGA isn't designed to have more than one screen resolution (640x480, with pixel doubling to 320x240). The memory for the frame buffer is fixed and can't be increased (without major upheaval). The frame and line frequencies are fixed by the division ratios available (within the PIO code, I assume). Unless you spot something obvious in the source I'd assume that there is currently no mechanism to use any other video timings. Mick Zilog Inside! nascom.info for Nascom & Gemini Preliminary MMBasic docs & my PCB designs |
||||
Kawamarad Newbie Joined: 29/01/2024 Location: CanadaPosts: 8 |
It's hard to do what the PicomiteVGA does and I expect there is no such file. If you're especially keen, keep reading the code to understand how it works. John I would love to try, but it seems I received a link (or I chose the wrong one) for a different RasberryPi version (version.h says 5.05.03). I this the right - and latest - PicomiteVGA version? If not, where could I download it? Emmanuel. "Écrire des messages en majuscules accélère le traitement informatique" (ChatGPT) |
||||
lizby Guru Joined: 17/05/2016 Location: United StatesPosts: 3150 |
See https://www.thebackshed.com/forum/ViewTopic.php?TID=16672&PID=216958#216958#216958 Version 5.09.00b0 "All code and build files on https://github.com/UKTailwind/ including USB variants" PicoMite, Armmite F4, SensorKits, MMBasic Hardware, Games, etc. on fruitoftheshed |
||||
JohnS Guru Joined: 18/11/2011 Location: United KingdomPosts: 3801 |
Try https://github.com/UKTailwind/PicoMite-VGA-Edition John |
||||
Page 1 of 2 |
Print this page |