![]() |
Forum Index : Microcontroller and PC projects : File Manager for PicoMite
![]() ![]() ![]() ![]() |
|||||
Author | Message | ||||
twofingers Guru ![]() Joined: 02/06/2014 Location: GermanyPosts: 1520 |
Hi Peter, that was also more of a rhetorical question. Sometimes you overlook something that's actually obvious. Regards Michael causality ≠ correlation ≠ coincidence |
||||
javavi![]() Guru ![]() Joined: 01/10/2023 Location: UkrainePosts: 436 |
Installing the Perfect_DOS_VGA_437 font partially solves the problem of displaying the pseudographics symbols of the PicoMite encoding. Perfect DOS VGA 437.zip |
||||
twofingers Guru ![]() Joined: 02/06/2014 Location: GermanyPosts: 1520 |
Hi Vadim, is there a problem with the display of the "pseudographic symbols" with VGA/HDMI? Or is there a problem with the display in Teraterm (console)? I thought that had been resolved long ago? I don't understand. Is the attached TrueType font supposed to be for Teraterm? For the VT100 version, I'm quite happy with the "terminal" font. However, I'm using a very old Teraterm (4.85). Everything is explained in the FM VT100 thread. Kind regrards Michael causality ≠ correlation ≠ coincidence |
||||
javavi![]() Guru ![]() Joined: 01/10/2023 Location: UkrainePosts: 436 |
I am talking about a simple version of FM without adaptation for VT100. For me, if I turn on the "Terminal" font in TeraTerm, everything looks like this. Maybe it's a question of choosing the right encoding for the country, I don't know, but with the installation of a new font for DOS, it solved the problem with pseudographics for me. My desire to make all the symbols of the PicoMite font appear the same in the Terminal on the computer. Edited 2025-04-12 21:13 by javavi |
||||
Mixtel90![]() Guru ![]() Joined: 05/10/2019 Location: United KingdomPosts: 7470 |
Ah, but then you have to know in advance which terminal program on which computer. Not possible. What someone sees on Linux or a Mac or a hardware terminal of some sort may not be the same as Windows. I *really* don't like to be dependent on a set of non-standard pseudo-graphics designed for MSDOS, even if they do help the file manager to look prettier. That's not its job. :) Mick Zilog Inside! nascom.info for Nascom & Gemini Preliminary MMBasic docs & my PCB designs |
||||
dddns Senior Member ![]() Joined: 20/09/2024 Location: GermanyPosts: 215 |
I think this is your solution. Just just use find/replace and there you go. Or do I overlook something? |
||||
twofingers Guru ![]() Joined: 02/06/2014 Location: GermanyPosts: 1520 |
@Vadim: This is what your FM145 looks like with the 437 (Perfect DOS VGA 437 Win.ttf) font: Michael My goal was to create a file manager for "bare" PicoMites. I believe that's been done sufficiently with the FMVT for Klingons. I don't think it's a bad idea to have an FM for VGA and one with VT100 escape codes. Edited 2025-04-12 22:01 by twofingers causality ≠ correlation ≠ coincidence |
||||
javavi![]() Guru ![]() Joined: 01/10/2023 Location: UkrainePosts: 436 |
For me, FM in the terminal now looks good without any adaptation for VT100! Only in black and white display on the terminal. Another possible reason is in the terminal encoding settings. FM147.zip Edited 2025-04-12 22:08 by javavi |
||||
dddns Senior Member ![]() Joined: 20/09/2024 Location: GermanyPosts: 215 |
Very nice code now!! And replacing the few print@ can be done by hand :)) |
||||
twofingers Guru ![]() Joined: 02/06/2014 Location: GermanyPosts: 1520 |
@Vadim, Did you use a bare Pico? Which firmware version? I'm already getting error messages for "MODE 1:Font 1." Obviously, that can't work with the console! This doesn't work either: [49] Colour Map c(),c() Error : Expression syntax Your version looks just as wrong to me as the FM145. ![]() BTW: Please correct this. Const FW=MM.Info(FONTWIDTH):FH=MM.Info(FONTHEIGHT) causality ≠ correlation ≠ coincidence |
||||
twofingers Guru ![]() Joined: 02/06/2014 Location: GermanyPosts: 1520 |
This is what your FM145 looks like at mitr with the 437 (Perfect DOS VGA 437 Win.ttf) font: Michael causality ≠ correlation ≠ coincidence |
||||
Martin H.![]() Guru ![]() Joined: 04/06/2022 Location: GermanyPosts: 1192 |
Hallo Michael, das sieht nach der alten Codepage "verwirrung" aus den DOS Zeiten aus. Da kannst Du ruhig den gleichen Zeichensatz verwenden, des wird von DOS übersetzt, nur eben falsch. https://de.wikipedia.org/wiki/Codepage_850 This looks like the old code page “confusion” from the DOS times. You can use the same character set, it will be translated by DOS, but incorrectly. Cheers Martin 'no comment |
||||
twofingers Guru ![]() Joined: 02/06/2014 Location: GermanyPosts: 1520 |
Hi Martin, What I'm looking for are clear instructions to achieve a specific result. That is, which hardware and software to use and which settings to use. Regards Michael causality ≠ correlation ≠ coincidence |
||||
Mixtel90![]() Guru ![]() Joined: 05/10/2019 Location: United KingdomPosts: 7470 |
Simples! Don't use colour or any ASCII codes above 127 as there are no standard printing characters above that. :) Screen format permitting, you'll get a file manager that displays equally well in almost any terminal since the VT52, LCD TFT, VGA or HDMI display. It'll be boring and uninteresting but it will manage files. Probably. ;) Mick Zilog Inside! nascom.info for Nascom & Gemini Preliminary MMBasic docs & my PCB designs |
||||
twofingers Guru ![]() Joined: 02/06/2014 Location: GermanyPosts: 1520 |
Hi Mick, you've used the term "simple file manager" several times elsewhere. Would you like to describe it in more detail? Do you think all users would be satisfied with it? I'm not a big fan of a "communist" solution ( ![]() Kind regards Michael Please specify in detail what you think would be dispensable. Please also explain the reasons why you are aiming for a minimal version. Edited 2025-04-13 01:44 by twofingers causality ≠ correlation ≠ coincidence |
||||
Mixtel90![]() Guru ![]() Joined: 05/10/2019 Location: United KingdomPosts: 7470 |
This is only my opinion, nothing else. :) A file manager has a purpose in life - it makes managing files easier than it would be at the command line. As such it needs to function well above everything else. IMHO there is little need to include functions that can already be done at the command line - it may even be possible to include one or two screen lines as the command line. matherp has already stated that there may be a place to include a file manager in MMBasic, which I think would be a great idea. Space is obviously going to be restricted, which is a good reason in itself to keep things simple. However, we have a problem... We don't know which display will be attached - there may not even be one. Obviously it would be a great advantage if the file manager would work on any display or terminal. We don't know which fonts will be available, never mind which is used for a terminal over which we have no control. Therefore it makes sense to keep to standard ASCII characters that can be displayed on as many displays as possible. There is no standard for any ASCII codes between 128 and 255 as they were never defined. Instead there is a hotch-potch of characters, some now used for "foreign" language systems (remember ASCII is American). Unless you have full control over all fonts used you could get anything in this area, Kanji for example. As far as control goes, you really need to be able to handle any standard keyboard, including those without numeric pads and arrow keys and with a limited number of function keys (remember you may need a Fn key for any of them to work at all). I hope no-one thinks I'm knocking the excellent work that people have been doing on this, I certainly couldn't have done it. :) I'm just uncertain whether the goal is shifting slightly off target. Mick Zilog Inside! nascom.info for Nascom & Gemini Preliminary MMBasic docs & my PCB designs |
||||
javavi![]() Guru ![]() Joined: 01/10/2023 Location: UkrainePosts: 436 |
Try setting up TeraTerm with this DOS font size 12. Additionally, configure the encoding: Setup -> Additional settings... -> Coding: recive English/ISO8859-1 I managed to achieve the result with this encoding |
||||
twofingers Guru ![]() Joined: 02/06/2014 Location: GermanyPosts: 1520 |
Thanks, Mick! ![]() Even though I'm not entirely happy with your answer. What I'm missing is a statement as to whether you think a single version can make all users happy. I'm also missing your statement (list) about the obsolete features. If I thought that, I wouldn't answer you. ![]() As I understand it, you want an FM that lacks the following features: - View files with browsing function. - Displaying files in hex format. - Copying folders. - Deleting folders. - Copying multiple selected files. - Deleting multiple selected files. - A very simple input routine. - Displaying the tree structure of a disk/folder (DiskInfo). I think you should be very happy with Vadim's version! And I think Vadim did a great job. ![]() By the way, I don't think the FM should be integrated into the firmware. I think the SLOT 2 solution has proven itself. It's fast and always available. I would perhaps like to have one more additional slot (for the 2350). Michael causality ≠ correlation ≠ coincidence |
||||
twofingers Guru ![]() Joined: 02/06/2014 Location: GermanyPosts: 1520 |
Thanks Vadim, unfortunately, I don't have this setting yet (Teraterm 4.85). I found the setting in V5 (but I don't like V5 very much). I won't be contributing much more anyway, because the VT100 version is sufficient for bare Picos boards, and I have few ideas for improvements for VGA. Kind regards Michael causality ≠ correlation ≠ coincidence |
||||
dddns Senior Member ![]() Joined: 20/09/2024 Location: GermanyPosts: 215 |
I really cannot explain why you guys are ignoring this. It is a direct replacement for the print@ command with the same syntax. And it is even from Peter himself and very nice. Thanks again for this: Option explicit setcolour RGB(red),RGB(blue) clearscreen writeat 30,24,"Hello World" ' Sub resize 'Set the serial console to the same size as the screen Option console serial Print Chr$(27)+"[8;"+Str$(MM.HEIGHT)+";"+Str$(MM.WIDTH+1)+"t"; Option console both End Sub ' Sub cursor x%,y% ' move the cursor to the x%,y% character positions (not pixel) Option console serial Print Chr$(27)+"["+Str$(y%+1)+";"+Str$(x%+1)+"H"; If MM.DISPLAY Then Print @(x%*MM.FONTWIDTH,y%*MM.FONTHEIGHT)""; EndIf Option console both End Sub ' Sub writeat x%,y%,t$ 'write text at the character position specified Option console serial Print Chr$(27)+"["+Str$(y%+1)+";"+Str$(x%+1)+"H"+t$; If MM.DISPLAY Then Text x%*MM.FONTWIDTH,y%*MM.FONTHEIGHT,t$ EndIf Option console both End Sub ' Sub write t$ 'write text at the current cursor position Option console serial Print t$; If MM.DISPLAY Then Text MM.HPOS*MM.FONTWIDTH,MM.VPOS*MM.FONTHEIGHT,t$ EndIf Option console both End Sub ' Sub setcolour f%, b% ' set the colour of both the screen and the console Local integer fr=f%>>16,br=b%>>16,fg=(f%>>8) And &HFF,bg=(b%>>8) And &HFF,fb=f% And &HFF,bb=b% And &HFF Option console serial Print Chr$(27)+"[38;2;"+Str$(fr)+";"+Str$(fg)+";"+Str$(fb)+"m"; Print Chr$(27)+"[48;2;"+Str$(br)+";"+Str$(bg)+";"+Str$(bb)+"m"; Option console both Colour f%,b% End Sub ' Sub clearscreen 'clear both the display and the console Option console serial Print Chr$(27)+"[7"+Chr$(27)+"[2J"+Chr$(27)+"[H"; If MM.DISPLAY Then CLS EndIf Option console both End Sub |
||||
![]() ![]() ![]() ![]() |
![]() |
![]() |
The Back Shed's forum code is written, and hosted, in Australia. | © JAQ Software 2025 |