Home
JAQForum Ver 24.01
Log In or Join  
Active Topics
Local Time 07:08 02 Aug 2025 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 : hardware vga thing

     Page 1 of 2    
Author Message
stanleyella

Guru

Joined: 25/06/2022
Location: United Kingdom
Posts: 2567
Posted: 08:40pm 31 Aug 2022
Copy link to clipboard 
Print this post

Would this be any use for a picomite?
It was posted on another forum for use with 8bit pics but no libs to support except
https://www.instructables.com/Using-ESP32VGA32-Terminal-for-Z80-MBC2/

https://www.ebay.co.uk/itm/374067497222?chn=ps&_trkparms=ispr%3D1&amdata=enc%3A14SwgoBr2TtCdhMYVbo7IWg43&norover=1&mkevt=1&mkrid=710-134428-41853-0&mkcid=2&itemid=374067497222&targetid=1647205088280&device=c&mktype=pla&googleloc=1007416&poi=&campaignid=17206177401&mkgroupid=136851690655&rlsatarget=pla-1647205088280&abcId=9300866&merchantid=420527642&gclid=Cj0KCQjwjbyYBhCdARIsAArC6LI_klccW7fpyrnxZz1GkOjg0b_vQCKZAqOOgqhQ-gjsVYykvMvVvi8aAt-aEALw_wcB
 
DaveJacko
Regular Member

Joined: 25/07/2019
Location: United Kingdom
Posts: 83
Posted: 09:23pm 31 Aug 2022
Copy link to clipboard 
Print this post

I am really impressed by this amazing gadget!
we need one of our clever members to have a look at it  
Try swapping 2 and 3 over
 
DaveJacko
Regular Member

Joined: 25/07/2019
Location: United Kingdom
Posts: 83
Posted: 09:33pm 31 Aug 2022
Copy link to clipboard 
Print this post

I'll retract that.. having thought about it.
PicomiteVGA is more amazing than almost anything for £5
thanks to it's generous developers  
Try swapping 2 and 3 over
 
Mixtel90

Guru

Joined: 05/10/2019
Location: United Kingdom
Posts: 7938
Posted: 09:42pm 31 Aug 2022
Copy link to clipboard 
Print this post

Since you need a VGA monitor and a keyboard to make it do anything why not just plug the USB console in? I'm pretty sure a USB lead costs less than 14 quid. :)
Mick

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

Joined: 07/06/2022
Location: United States
Posts: 313
Posted: 10:15pm 31 Aug 2022
Copy link to clipboard 
Print this post

I think I have one of these in a drawer...Picomite comes first
 
Rickard5

Guru

Joined: 31/03/2022
Location: United States
Posts: 463
Posted: 02:13am 01 Sep 2022
Copy link to clipboard 
Print this post

Looks neat I'd maybe pop the 12 what Evers for one but

I may be Vulgar, but , while I'm poor, I'm Industrious, Honest,  and trustworthy! I Know my Place
 
Mixtel90

Guru

Joined: 05/10/2019
Location: United Kingdom
Posts: 7938
Posted: 06:13am 01 Sep 2022
Copy link to clipboard 
Print this post

Check out Geoff's little terminal, using just a PIC32MX250
https://geoffg.net/terminal.html
Does more or less the same thing - converts TTL to a VT100 with VGA monitor * PS/2 keyboard. OK, there's no mouse or RF, but who needs them? VT52 and VT100 terminals didn't have mice or RF connection either. :)
Edited 2022-09-01 16:17 by Mixtel90
Mick

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

Joined: 05/03/2018
Location: Netherlands
Posts: 5091
Posted: 08:38am 01 Sep 2022
Copy link to clipboard 
Print this post

  Mixtel90 said  Check out Geoff's little terminal, using just a PIC32MX250
https://geoffg.net/terminal.html
Does more or less the same thing - converts TTL to a VT100 with VGA monitor * PS/2 keyboard. OK, there's no mouse or RF, but who needs them? VT52 and VT100 terminals didn't have mice or RF connection either. :)


No, not really....

With MMBasic we live in a world where connection with the outside world is more or less dictated by serial port. On CMM2 there where (short lived) project to add WIFI, but the  issue around the ESP8266 modules (basically the firmware of the ESP's) did not make that baseline (in other words, WIFI was something for the experts, not the grand forum).

This VGA terminal adds IP to the connection palette. It is logical that people on this forum read over that particular feature, because they are used to living in the serial port world. But it is definitely a useful feature to have an IP (wireless) terminal.

Volhout

P.S. The niche market for it needs to be determined. When you install a VGA monitor, PS2 keyboard (mouse) and use this board as an IP terminal, you could also install a 15 year old laptop (this age is cheap as hell) and have better performance.
PicomiteVGA PETSCII ROBOTS
 
Mixtel90

Guru

Joined: 05/10/2019
Location: United Kingdom
Posts: 7938
Posted: 10:43am 01 Sep 2022
Copy link to clipboard 
Print this post

Looks like the irony in my post might have got just a little lost in translation. ;)

A simple wireless connection is easy over COM ports with something like the JDY-40 or the HC-12, the ESP is the beast to use for Wi=fi connection and, no matter how you dress it up, that's still a pig. Things haven't moved on since that CMM2 project.
Mick

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

Guru

Joined: 07/09/2016
Location: United Kingdom
Posts: 2170
Posted: 11:01am 01 Sep 2022
Copy link to clipboard 
Print this post

  Volhout said  
This VGA terminal adds IP to the connection palette. It is logical that people on this forum read over that particular feature, because they are used to living in the serial port world. But it is definitely a useful feature to have an IP (wireless) terminal.


tend to agree with that.

Network interface is fairly straightforward to do (very stable too with 8266) with a MMBasic based device. The real ball-ache is the protocols for any Ethernet comms, you have to do *everything*. Even just basic HTTP can become very fiddly and involved with tons of string slicing and parsing. Inconsistencies in the "console" output from such ethernet<-->serial devices don't help either.

Without a layer to make it easy to interface, any network aware project becomes a marathon. So you want a layer in the firmware? what protocols? just sockets? even then, someone's pet protocol will get left behind so I tend to agree with the omission of network support in *Mites totally, no point making a rod for your own beating. If you want it, it's do-able with what you have and supporting everyone's wishes doesn't become a mammoth task for the developers which will inevitably leave someone p'd off that their protocol isn't supported (although basic sockets would cover pretty much everything if you put the work in).

jus' sayin'
Edited 2022-09-01 21:06 by CaptainBoing
 
andreas

Senior Member

Joined: 07/12/2020
Location: Germany
Posts: 226
Posted: 11:31am 01 Sep 2022
Copy link to clipboard 
Print this post

  Mixtel90 said  Check out Geoff's little terminal, using just a PIC32MX250
https://geoffg.net/terminal.html
Does more or less the same thing - converts TTL to a VT100 with VGA monitor * PS/2 keyboard. OK, there's no mouse or RF, but who needs them? VT52 and VT100 terminals didn't have mice or RF connection either. :)


like this: https://www.budgetronics.eu/en/building-kits/ascii-vt100-video-terminal-building-kit-original-version/a-25776-20



-andreas
 
Mixtel90

Guru

Joined: 05/10/2019
Location: United Kingdom
Posts: 7938
Posted: 01:04pm 01 Sep 2022
Copy link to clipboard 
Print this post

Interesting - that's Geoff's design as a kit. :)
Mick

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

Joined: 05/03/2018
Location: Netherlands
Posts: 5091
Posted: 01:28pm 01 Sep 2022
Copy link to clipboard 
Print this post

They didn't even remove the copyright Geoff Graham message.....

Volhout
PicomiteVGA PETSCII ROBOTS
 
lizby
Guru

Joined: 17/05/2016
Location: United States
Posts: 3378
Posted: 01:40pm 01 Sep 2022
Copy link to clipboard 
Print this post

And then there's Annex RDS for the ESP32--an excellent Basic with a whole lot of internet capability and support for many of the devices that MMBasic supports on a $5 device (with shipping).

Includes over-the-air programming from a browser and many other excellent features.

Annex Forum

A PCB implementation with LCD & other devices:


PCB thread

Youtube Video

No VGA support, though--but I guess you could add a PicoMite or Geoff's terminal.
PicoMite, Armmite F4, SensorKits, MMBasic Hardware, Games, etc. on fruitoftheshed
 
stanleyella

Guru

Joined: 25/06/2022
Location: United Kingdom
Posts: 2567
Posted: 03:24pm 01 Sep 2022
Copy link to clipboard 
Print this post

I only posted this device as it was recommended/suggested  by the guru on another forum. I first asked how is a ps mouse going to do anything.
The answer was why not get a board and try it. er.. bit vague. All he said was no modification to his basic and just used serial tx/rx.

I was looking for info and thinking someone here may have one and what use is it.

I know there is vga mmbasic and realise the effort in making it possible. I will get around to trying it but just still learning mmbasic and vga code looks very unfamiliar from the graphic code and it's all about graphics.. it also seems a work in progress ie betas. It says somewhere that the picomite will not be updated as the system/board changes too much:(

Lots of interesting stuff to check out. Thanks. stan
 
Tinine
Guru

Joined: 30/03/2016
Location: United Kingdom
Posts: 1646
Posted: 04:10pm 01 Sep 2022
Copy link to clipboard 
Print this post

  lizby said  And then there's Annex RDS for the ESP32--an excellent Basic


Would be nice to compare....or maybe I missed it?



Print "Maximite Benchmark tests"
Print " "

Print "Benchmark 1"
Timer = 0
For j = 1 To 1000
Next j
Print Timer / 1000
Print " "

Print "Benchmark 2"
Timer = 0
j =j0
BM2:
j = j+1
If j < 1000 GoTo BM2
Print Timer / 1000
Print " "

Print "Benchmark 3"
Timer = 0
j = 0
BM3:
j = j+1
a = j/j*j+j-j
If j < 1000 GoTo BM3
Print Timer / 1000
Print " "

Print "Benchmark 4"
Timer = 0
j = 0
BM4:
j = j+1
a = j/2*3+4-5
If j < 1000 GoTo BM4
Print Timer / 1000
Print " "

Print "Benchmark 5"
Timer = 0
j = 0
BM5:
j = j+1
m = j/2*3+4-5
Gosub 4000
If j < 1000 GoTo BM5
Print Timer / 1000
Print " "

Print "Benchmark 6"
Timer = 0
j = 0
dim ray(5)
BM6:
j = j+1
m = j/2*3+4-5
Gosub 4000
For q = 1 TO 5
Next q
If j < 1000 GoTo BM6
Print Timer / 1000
Print " "

Print "Benchmark 7"
Timer = 0
j = 0
dim ray2(5)
BM7:
j = j+1
m = j/2*3+4-5
Gosub 4000
For q = 1 TO 5
ray2(q) = m
Next q
If j < 1000 GoTo BM7
Print Timer / 1000
Print " "

Print "Benchmark 8"
Timer = 0
j = 0
BM8:
j = j+1
m = j^2
blog = LOG(j)
csin = SIN(j)
If j < 1000 GoTo BM8
Print Timer / 1000

End

4000 RETURN



Craig
 
Mixtel90

Guru

Joined: 05/10/2019
Location: United Kingdom
Posts: 7938
Posted: 05:04pm 01 Sep 2022
Copy link to clipboard 
Print this post

@stanleyella
I'm always a bit wary of stuff that I can't find a circuit diagram and/or a manual for. If it looks like I'm going to struggle to use it then I won't buy it. In this particular case the example of using it with the Z80 SBC is interesting. The SBC will handle it as a terminal, but the wi-fi part is probably useless due to the limitations of the SBC. Goodness knows what tthe mouse does. :)

The PicoMite VGA is very similar to the normal PicoMite.
. You only have 2 screen modes. Mode 1 is 640x480, mode 2 is 320x240.
. Only mode 2 is truly a colour graphic mode, with 16 colours.
. Touch screens are not supported so all those commands are missing.
. As there is no SPI display there is no SYSTEM SPI.
. Screen mode 1 supports square character cells which align with a modified font 3.
. Mode 1 is a 1-colour mode. A pixel is either off or on.
. In mode 1 you can use "tiles" to set a foreground and background colour for each character cell.
Those are just things I could think of off the top of my head.

MMBasic on the PicoMite will, I suspect, be supported wherever possible on any future official Pico boards (although not all facilities may be supported as MMBasic has no command slots left). Third party boards are not guaranteed to follow the Raspberry Pi spec so it wouldn't be possible to support MMBasic on all variations.

As for it being a work in progress, well, I suppose support always is! We are seeing a few tweaks now as well as bug fixes. I think both versions of the PicoMite are getting pretty full now. :)
Mick

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

Joined: 17/05/2016
Location: United States
Posts: 3378
Posted: 05:26pm 01 Sep 2022
Copy link to clipboard 
Print this post

It's not particularly fast. A bit slower than a Micromite MX170 at 40mHz, but if you want the kind of internet connectivity which requires a great deal of tedious work (and additional components) in MMBasic, it can be a good choice.

Annex Basic Benchmark

I had to change the code a bit. I think the only significant change was the empty GOSUB to a line number; I had to change that to a label.


' bench1.bas
Print "Maximite Benchmark tests"
Print " "

Print "Benchmark 1"
millis0 = millis
For j = 1 To 1000
Next j
millis1=millis-millis0

Print "Benchmark 2"
millis0 = millis
j =0
BM2:
j = j+1
If j < 1000 GoTo BM2
millis2=millis-millis0

Print "Benchmark 3"
millis0 = millis
j = 0
BM3:
j = j+1
a = j/j*j+j-j
If j < 1000 GoTo BM3
millis3=millis-millis0
Print " "

Print "Benchmark 4"
millis0 = millis
j = 0
BM4:
j = j+1
a = j/2*3+4-5
If j < 1000 GoTo BM4
millis4=millis-millis0
Print " "

Print "Benchmark 5"
millis0 = millis
j = 0
BM5:
j = j+1
m = j/2*3+4-5
Gosub empty
If j < 1000 GoTo BM5
millis5=millis-millis0
Print " "

Print "Benchmark 6"
millis0 = millis
j = 0
dim ray(5)
BM6:
j = j+1
m = j/2*3+4-5
Gosub empty
For q = 1 TO 5
Next q
If j < 1000 GoTo BM6
millis6=millis-millis0

Print "Benchmark 7"
millis0 = millis
j = 0
dim ray2(5)
BM7:
j = j+1
m = j/2*3+4-5
Gosub empty
For q = 1 TO 5
ray2(q) = m
Next q
If j < 1000 GoTo BM7
millis7=millis-millis0

Print "Benchmark 8"
millis0 = millis
j = 0
BM8:
j = j+1
m = j^2
blog = LOG(j)
csin = SIN(j)
If j < 1000 GoTo BM8
millis8=millis-millis0

wlog millis1,millis2,millis3,millis4,millis5,millis6,millis7,millis8
End

empty: RETURN

PicoMite, Armmite F4, SensorKits, MMBasic Hardware, Games, etc. on fruitoftheshed
 
stanleyella

Guru

Joined: 25/06/2022
Location: United Kingdom
Posts: 2567
Posted: 05:44pm 01 Sep 2022
Copy link to clipboard 
Print this post

  Mixtel90 said  @stanleyella
I'm always a bit wary of stuff that I can't find a circuit diagram and/or a manual for. If it looks like I'm going to struggle to use it then I won't buy it. In this particular case the example of using it with the Z80 SBC is interesting. The SBC will handle it as a terminal, but the wi-fi part is probably useless due to the limitations of the SBC. Goodness knows what tthe mouse does. :)

The PicoMite VGA is very similar to the normal PicoMite.
. You only have 2 screen modes. Mode 1 is 640x480, mode 2 is 320x240.
. Only mode 2 is truly a colour graphic mode, with 16 colours.
. Touch screens are not supported so all those commands are missing.
. As there is no SPI display there is no SYSTEM SPI.
. Screen mode 1 supports square character cells which align with a modified font 3.
. Mode 1 is a 1-colour mode. A pixel is either off or on.
. In mode 1 you can use "tiles" to set a foreground and background colour for each character cell.
Those are just things I could think of off the top of my head.

MMBasic on the PicoMite will, I suspect, be supported wherever possible on any future official Pico boards (although not all facilities may be supported as MMBasic has no command slots left). Third party boards are not guaranteed to follow the Raspberry Pi spec so it wouldn't be possible to support MMBasic on all variations.

As for it being a work in progress, well, I suppose support always is! We are seeing a few tweaks now as well as bug fixes. I think both versions of the PicoMite are getting pretty full now. :)


I have only used the non vga picomite but use it for glcd which is impressive.
It is the main reason I use it but it has many features to learn.

There are many devices that initially look interesting.. hmmm? are they?

I used a V53L0X laser range finder. i2c and it is good and want to convert to mmbasic.
 
stanleyella

Guru

Joined: 25/06/2022
Location: United Kingdom
Posts: 2567
Posted: 05:59pm 01 Sep 2022
Copy link to clipboard 
Print this post

  lizby said  It's not particularly fast. A bit slower than a Micromite MX170 at 40mHz, but if you want the kind of internet connectivity which requires a great deal of tedious work (and additional components) in MMBasic, it can be a good choice.

Annex Basic Benchmark

I had to change the code a bit. I think the only significant change was the empty GOSUB to a line number; I had to change that to a label.


' bench1.bas
Print "Maximite Benchmark tests"
Print " "

Print "Benchmark 1"
millis0 = millis
For j = 1 To 1000
Next j
millis1=millis-millis0

Print "Benchmark 2"
millis0 = millis
j =0
BM2:
j = j+1
If j < 1000 GoTo BM2
millis2=millis-millis0

Print "Benchmark 3"
millis0 = millis
j = 0
BM3:
j = j+1
a = j/j*j+j-j
If j < 1000 GoTo BM3
millis3=millis-millis0
Print " "

Print "Benchmark 4"
millis0 = millis
j = 0
BM4:
j = j+1
a = j/2*3+4-5
If j < 1000 GoTo BM4
millis4=millis-millis0
Print " "

Print "Benchmark 5"
millis0 = millis
j = 0
BM5:
j = j+1
m = j/2*3+4-5
Gosub empty
If j < 1000 GoTo BM5
millis5=millis-millis0
Print " "

Print "Benchmark 6"
millis0 = millis
j = 0
dim ray(5)
BM6:
j = j+1
m = j/2*3+4-5
Gosub empty
For q = 1 TO 5
Next q
If j < 1000 GoTo BM6
millis6=millis-millis0

Print "Benchmark 7"
millis0 = millis
j = 0
dim ray2(5)
BM7:
j = j+1
m = j/2*3+4-5
Gosub empty
For q = 1 TO 5
ray2(q) = m
Next q
If j < 1000 GoTo BM7
millis7=millis-millis0

Print "Benchmark 8"
millis0 = millis
j = 0
BM8:
j = j+1
m = j^2
blog = LOG(j)
csin = SIN(j)
If j < 1000 GoTo BM8
millis8=millis-millis0

wlog millis1,millis2,millis3,millis4,millis5,millis6,millis7,millis8
End

empty: RETURN

sorry I could not get it to run
 
     Page 1 of 2    
Print this page
The Back Shed's forum code is written, and hosted, in Australia.
© JAQ Software 2025