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 : VT-100 like terminal
Author | Message | ||||
Mark Regular Member Joined: 26/11/2022 Location: United StatesPosts: 72 |
Is anyone aware of a project to allow a PicoMite VGA to work as a "dumb" terminal such as a VT-100? It would be an interesting project to wire up a PicoMite VGA as a terminal connecting to another Pico running MMBASIC without having to use a terminal emulator on a PC. Mark |
||||
phil99 Guru Joined: 11/02/2018 Location: AustraliaPosts: 2200 |
Not a Pico but may do what you want. https://geoffg.net/terminal.html I built one long ago and it has been very useful. Edit. Programming the PIC32MX250 chip can be done with an Arduino Nano or Microbridge or MicroMite2 and pic32prog.exe https://geoffg.net/programming_pics.html https://geoffg.net/microbridge.html Edited 2024-12-26 08:48 by phil99 |
||||
javavi Guru Joined: 01/10/2023 Location: UkrainePosts: 309 |
This project can be easily ported to the PicoMite VGA/HDMI scheme https://github.com/dhansel/VersaTerm |
||||
Mark Regular Member Joined: 26/11/2022 Location: United StatesPosts: 72 |
Thanks for the info. |
||||
axn1 Newbie Joined: 27/12/2024 Location: GermanyPosts: 3 |
A dear friend of mine also has created a VT-100 VGA terminal for the Pico RP2040: PicoTerminal Features are: - different colour and screen resolutions, BW to RGB or RGBI, 1..16 bit - USB keyboard and mouse support - sound from buzzer to PWM to I2S (Soundchip emulation in progress) NB: This is my first post to the backshed, thanks for inspirations and greetings to everyone! |
||||
Mixtel90 Guru Joined: 05/10/2019 Location: United KingdomPosts: 6948 |
From what I can tell (which is very little as C is like a completely foreign language to me) that looks like an excellent project. Thanks axn1, hello and welcome to the 'Shed! :) Mick Zilog Inside! nascom.info for Nascom & Gemini Preliminary MMBasic docs & my PCB designs |
||||
dddns Newbie Joined: 20/09/2024 Location: GermanyPosts: 24 |
What do you think, could this be programmed in MMBasic in terms of speed and usability? Is anyone aware of a VT-100 like terminal emulation written in basic? |
||||
Mixtel90 Guru Joined: 05/10/2019 Location: United KingdomPosts: 6948 |
I suspect you might run into problems with parsing speed above 300 baud or so. MMBasic is interpreted after all. Mick Zilog Inside! nascom.info for Nascom & Gemini Preliminary MMBasic docs & my PCB designs |
||||
PeteCotton Guru Joined: 13/08/2020 Location: CanadaPosts: 375 |
I'm currently working on a Star Trek game (based on the old mainframe version), but as usual with my projects, it's getting a bit out of hand. The standard text font was giving me "PC" vibes (especially the lowercase g), and I really wanted "old mainframe" vibes. So, to help tug on the players nostalgia strings, I created a VT terminal font file for the CMM2 (complete with scanlines), which I'm guessing should work on other maximites too. You're very welcome to use it if you want. The font was based on the Windows font "Glass TTY VT220". Each character is 10x20, which gives 80x30 text in Mode 1 (800x600). ' Font size : 10x20 pixels DefineFont #9 9720140A 00000000 00000000 00000000 00000000 00000000 00000000 00060000 06006000 00600000 00000006 00000600 00000000 1B000000 00B00100 0000001B 00000000 00000000 00000000 00000000 B001001B 01803F00 803F00B0 1B00B001 00000000 00000000 01000600 003600F8 0600F801 00F801C0 00000006 00000000 C0180000 1B00D803 00600000 BC01800D 00803100 00000000 1E000000 00300300 E0010033 03C03300 C01F0018 00000000 00000000 60000007 00000C00 00000000 00000000 00000000 00000000 00000300 000C0060 0C00C000 00600000 00000003 00000000 000C0000 03006000 00300000 60000003 00000C00 00000000 00000000 00980100 FC03000F 01000F00 00000098 00000000 00000000 60000000 03000600 000600FC 00006000 00000000 00000000 00000000 00000000 00000000 00E00000 8001000C 00000000 00000000 00000000 00FC0300 00000000 00000000 00000000 00000000 00000000 00000000 00000000 000E00E0 00000000 00000000 1800C000 00000300 000C0060 30008001 00000000 00000000 01000F00 C0300098 30000C03 009801C0 0000000F 00000000 00060000 1E00E000 00600000 60000006 00801F00 00000000 1F000000 000C0380 7800C000 03001C00 C03F0000 00000000 00000000 1800C03F 00000300 C0000078 1F000C03 00000080 00000000 00000300 000F0070 3F00B001 003000C0 00000003 00000000 C03F0000 3F000003 008C0380 0C03C000 00801F00 00000000 0F000000 00800180 F8030030 03C03800 801F000C 00000000 00000000 0C00C03F 00800100 00060030 0C00C000 00000000 00000000 03801F00 C030000C 3000F801 000C03C0 0000801F 00000000 801F0000 31000C03 00FC01C0 1800C000 00001F00 00000000 00000000 00E00000 0000000E 00000000 000E00E0 00000000 00000000 E0000000 00000E00 00000000 0C00E000 00800100 00000000 00C00000 000C0030 0C000003 00300000 0000C000 00000000 00000000 3F000000 000000C0 0000C03F 00000000 00000000 30000000 00C00000 0C000003 00000300 003000C0 00000000 00000000 0C03801F 00800300 00060060 06000000 00000000 00000000 03801F00 C037000C 3700DC03 000003C0 0000801F 00000000 00060000 1900F000 000C0380 0C03C03F 00C03000 00000000 3F000000 008C0180 F801C018 01C01800 803F008C 00000000 00000000 8C01800F 03003000 00300000 0F008C01 00000080 00000000 01003F00 C0180098 18008C01 009801C0 0000003F 00000000 C03F0000 30000003 00F00300 00030030 00C03F00 00000000 3F000000 000003C0 F0030030 03003000 00300000 00000000 00000000 8C01800F 03003000 C0330000 0F008C01 00000080 00000000 03C03000 C030000C 3000FC03 000C03C0 0000C030 00000000 801F0000 06006000 00600000 60000006 00801F00 00000000 03000000 001800C0 18008001 03800100 001F0018 00000000 00000000 3803C030 03003E00 003E0080 30003803 000000C0 00000000 03003000 00300000 30000003 00000300 0000C03F 00000000 C0300000 3F009C03 006C03C0 0C03C030 00C03000 00000000 30000000 008C03C0 6C03C03C 03C03300 C030001C 00000000 00000000 0C03801F 03C03000 C030000C 1F000C03 00000080 00000000 03803F00 C030000C 3000F803 00000300 00000030 00000000 801F0000 30000C03 000C03C0 1803C033 00C01F00 00000000 3F000000 000C0380 F803C030 03003300 C0300018 00000000 00000000 0C03801F 01003000 C00000F8 1F000C03 00000080 00000000 00C03F00 00060060 06006000 00600000 00000006 00000000 C0300000 30000C03 000C03C0 0C03C030 00801F00 00000000 30000000 000C03C0 98018019 00000F00 000600F0 00000000 00000000 0C03C030 03C03000 C036006C 1900FC03 00000080 00000000 01C03000 000F0098 0F006000 00980100 0000C030 00000000 C0300000 0F009801 00600000 60000006 00000600 00000000 3F000000 001800C0 60000003 01000C00 C03F0080 00000000 00000000 C000800F 00000C00 000C00C0 0F00C000 00000080 00000000 01003000 000C0080 03006000 00180000 0000C000 00000000 001F0000 03003000 00300000 30000003 00001F00 00000000 06000000 00F00000 0C038019 00000000 00000000 00000000 00000000 00000000 00000000 00000000 3F000000 000000C0 00000000 00000E00 00030060 00000000 00000000 00000000 00000000 00000000 1F000000 000C0080 1C03C01F 00C01F00 00000000 30000000 00000300 8C03803F 03C03000 803F008C 00000000 00000000 00000000 03801F00 0030000C 1F000003 000000C0 00000000 00C00000 C01F000C 30001C03 001C03C0 0000C01F 00000000 00000000 1F000000 000C0380 0003C03F 00801F00 00000000 07000000 00CC0080 F003000C 00000C00 000C00C0 00000000 00000000 00000000 03C01F00 001F0018 1F000003 000C0380 0000801F 03003000 803F0000 30008C03 000C03C0 0000C030 00000000 00060000 0E000000 00600000 60000006 00801F00 00000000 01000000 00000080 18008001 00800100 80310018 1F001803 00000000 00030030 03003300 003C0060 30003003 000000C0 00000000 00000E00 00060060 06006000 00600000 0000000F 00000000 00000000 39000000 00FC0380 6C03C036 00C03000 00000000 00000000 00000000 8C03803F 03C03000 C030000C 00000000 00000000 00000000 03801F00 C030000C 1F000C03 00000080 00000000 00000000 803F0000 38008C03 00F803C0 00030030 00003000 00000000 1F000000 001C03C0 FC01C031 00C00000 C000000C 00000000 00000000 CC018037 01001800 00180080 00000000 00000000 00000000 03801F00 801F0000 3F000C00 00000080 00000000 00000C00 003F00C0 0C00C000 00D80000 00000007 00000000 00000000 31000000 00180380 18038031 00C01F00 00000000 00000000 00000000 0C03C030 00801900 000600F0 00000000 00000000 00000000 03C03000 C036000C 1900FC03 00000080 00000000 00000000 80310000 0E00B001 00B00100 00008031 00000000 00000000 31000000 00180380 F8018033 03800100 001F0018 00000000 00000000 1800C03F 00000700 C03F00C0 00000000 00000000 6000C003 00000300 000300E0 03006000 000000C0 00000000 00000600 00060060 06006000 00600000 00000006 00000000 003C0000 0C006000 00700000 6000000C 00003C00 00000000 1C000000 006C03C0 00008033 00000000 00000000 00000000 00000000 20000002 00000200 00020020 02002000 00200000 20000002 00000200 00020020 02002000 00200000 0000F003 00000000 00000000 00000000 00000000 00000000 00F03F00 00000000 02000000 00200000 20000002 00000200 003E0020 00000000 00000000 00000000 00000000 00000000 03000000 002000F0 20000002 00000000 00000000 00000000 00000000 2000003E 00000200 F03F0020 3F00FF03 00FF03F0 FF03F03F 03F03F00 F03F00FF 3F00FF03 000102F0 01021020 02102000 10200001 20000102 00FF0310 E103F03F 03103E00 103E00E1 3E00E103 00E10310 FF03103E 02F03F00 F021001F 21001F02 001F02F0 1F02F021 03F02100 100000FF 00000200 00080040 20000001 00000400 00100080 20000002 00000100 40000008 00000200 00010010 00000800 00020040 03001000 00700000 F001000F 03003F00 007F00F0 FF01F00F 03002000 00380000 3E00C003 00F00300 F803003F 03C03F00 F03F00FE 0F00FF01 007F00F0 1F00F003 00F00100 7000000F 3F000300 00FE03F0 F803C03F 03003F00 003C00E0 30008003 00000200 00000000 00000000 00000000 00000000 00000000 FF030000 02002000 00200000 20000002 00000200 00020020 02002000 F03F0000 00000000 00000000 00000000 00000000 00000000 00000000 00010010 01001000 00100000 10000001 00000100 00010010 01041000 10408000 00010208 04102080 4C8C0C12 00000C2C 02082000 02104000 04108000 04108000 C4208C20 18A00109 00000000 C7010000 03700086 00001080 00000000 00000000 00000000 00C2FB00 04102080 21882001 02114408 0628A040 00400001 98800518 40108211 40000210 01020408 11214000 80818589 00000000 07200000 00033000 0C0C0C30 00000C0C 00000000 00000000 00000000 00000000 01000000 000E8703 00C00178 04000000 28600001 1041020A 22881044 40000108 BC000210 0003F420 30010B30 04310823 00020840 00020840 00021040 00041040 68600000 88303124 02041020 20400001 00010408 00082080 80000000 01051820 08229040 41042184 01020820 FB104000 000000C3 00000000 00000000 02000000 80037000 00E07810 00000000 00000000 1C000000 0E381818 00066000 00000460 00000000 34300000 80303132 04081040 08400002 08410801 34200331 0B300003 10400FC1 20800002 42041104 90208208 80010514 00000020 E0000000 38188007 00002070 00000000 00000000 00000000 01041000 1C70C000 F0C1030F C71F3FFC 7CFCFCF3 00000C3C 02082000 0E30C000 3CF08003 FCF0830F FCE08F3F 18E0010F 00000000 C7010000 037FFCF7 000010C0 00000000 00000000 00000000 FFFEFB00 FCF3EFBF E18F3FFF 031F7CF8 0638E0C0 00400001 F8800718 7CF0831F 70C0031F C103070C 1F3F7CF0 8081878F 00000000 0F200000 3FFFF003 FCFCFFFF 00000C3C 00000000 00000000 00000000 00000000 01000000 FCFFC703 00C0017F 04000000 38600001 F0C1030E E38F1F7C CF3FFFF8 BFFFFEF3 0003FCE0 F0010F30 FCF10F3F F0C30F7F C0030F7C 00031C70 00041040 78600000 8F3F3F3C 3EFCF0E3 E0C0030F 00030C38 00082080 80000000 01071820 0F3EF0C0 7FFCE187 FDF3CF3F FFDF7FFF 000000C3 00000000 00000000 02000000 8F3FF000 00E0F8F3 00000000 00000000 1C000000 FFFF1F1F C0077FFC 00000470 00000000 3C300000 8F3F3F3E 3CF8F0C3 F8C0030E F8C10F3F 3CE0033F 0F300003 DF7FFFC1 3FFFFCF3 7EFCF1C7 F0E0830F 8001071C 00000020 E0000000 F8FB8F3F 000020F0 00000000 00000000 80000000 00020820 02082080 08208000 20800002 80000208 FF030820 00000000 00000000 00000000 00000000 00000000 03000000 082080FF 20800002 80000208 00020820 02082080 08208000 00000002 00000000 00000000 00000000 00000000 00000000 End DefineFont |
||||
Frank N. Furter Guru Joined: 28/05/2012 Location: GermanyPosts: 855 |
Hi axn1! The project looks quite interesting - unfortunately there is no ready-made .UF2 for it... Frank |
||||
gadgetjack Senior Member Joined: 15/07/2016 Location: United StatesPosts: 150 |
Try this link. https://github.com/dquadros/RPTerm/tree/main The uf2 is in the build directory. Vga output and usb keyboard with a pico zero. I am gonna build one as soon as company has left. |
||||
axn1 Newbie Joined: 27/12/2024 Location: GermanyPosts: 3 |
Well, the PicoTerminal is actually just one example of what can be done with the kilipili library. You would choose your board layout, e.g. where the VGA Pins are connected, how many colour bits you want, and then compile your own terminal.uf2. I will suggest to him to include a compiled .uf2 for one of the example reference designs given in kilipili/boards/. Best regards, AxN NB: @gadgetjack: this seems to be another project, the name is quite NOT unique... |
||||
axn1 Newbie Joined: 27/12/2024 Location: GermanyPosts: 3 |
Kio has now saved an example PicoTerminal Release .uf2 for the vgaboard. He is happy for feedback and could create .uf2 releases for other configurations on request as well. On behalf of Kio and myself we send best wishes to all members of the backshed from Erlangen to a happy and peaceful new year! |
||||
robert.rozee Guru Joined: 31/12/2012 Location: New ZealandPosts: 2362 |
have a look at this thread: https://www.thebackshed.com/forum/ViewTopic.php?TID=16545&P=1#214849 unfortunately the fellow writing the code (No0ne, https://github.com/No0ne/hid2cdc) lost interest. in principal, just by plugging together existing 'building blocks', it should be possible to have a picomite connected to a RP2350 board just through their USB ports, with the RP2350 providing: - VT102 emulation back to the picomite via CDC over USB, - DVI (over HDMI) video output (80x24 character), - USB keyboard input via a secondary USB host running on PIO blocks, - any other functions you wish to use the RP2350's spare GPIO pins for. ie, the picomite (non-video) would have all I/O pins unencumbered. the RP2350 would essentially be acting as if it were a PC running a terminal emulator, that the picomite was plugged into. cheers, rob :-) Edited 2024-12-30 20:49 by robert.rozee |
||||
Print this page |