ISO mode

Chat about anything CX16 related that doesn't fit elsewhere
kelli217
Posts: 532
Joined: Sun Jul 05, 2020 11:27 pm

ISO mode

Post by kelli217 »


I am of the opinion that whenever practical, text-oriented programs should support ISO mode.

But the question becomes, "When is it practical?"

Part of that question hinges on what are the tradeoffs. One thing I can think of right away is the lack of PET graphics. They're very useful in implementing user interface elements; text-mode programs using ISO mode will have to work around this.

Any others?

TomXP411
Posts: 1783
Joined: Tue May 19, 2020 8:49 pm

ISO mode

Post by TomXP411 »


Word processors. Code editors.

Those are two things that benefit from ISO mode. Word processors, because many of the symbols with diacritical marks and accents don't exist in PETSCII. 

Likewise, C source code requires the use of symbols that don't exist in PETSCII: {, }, \, and |. So we need ISO mode for C editors. However, it sure would be convenient if it was possible to display PETSCII while editing the text in C programs. So editors really need a hotkey or menu command to switch between ISO and PETSCII modes on the fly. I don't think you can really count on one mode or the other as the "best" mode, even within a single document at times. 

 

tlesher
Posts: 2
Joined: Fri Feb 19, 2021 12:41 am

ISO mode

Post by tlesher »



14 hours ago, TomXP411 said:




Likewise, C source code requires the use of symbols that don't exist in PETSCII: {, }, \, and |. So we need ISO mode for C editors.



Nah, just use trigraphs.

kelli217
Posts: 532
Joined: Sun Jul 05, 2020 11:27 pm

ISO mode

Post by kelli217 »


Can one layer be in PETSCII mode and one layer be in ISO mode? That way, ISO characters for text could be overlaid with PET graphics for UX elements.

User avatar
AndyMt
Posts: 326
Joined: Sun Jun 21, 2020 3:02 pm
Location: Switzerland

ISO mode

Post by AndyMt »



1 minute ago, kelli217 said:




Can one layer be in PETSCII mode and one layer be in ISO mode? That way, ISO characters for text could be overlaid with PET graphics for UX elements.



The 2 layers can have different tile-sets (or fonts). So yes - you could use the 2nd layer with even a custom-made tile set. It will just be a bit complicated to combine the 2 in a meaningful way.

You can see this in my "Brixx" game where the graphics for the bicks, frame and background is one layer and the high-score numbers etc is the other one.

Be aware that the Kernal functions will only work with one of the layers, I think it's always "layer 1".

BruceMcF
Posts: 1336
Joined: Fri Jul 03, 2020 4:27 am

ISO mode

Post by BruceMcF »



1 hour ago, AndyMt said:




The 2 layers can have different tile-sets (or fonts). So yes - you could use the 2nd layer with even a custom-made tile set. It will just be a bit complicated to combine the 2 in a meaningful way.



You can see this in my "Brixx" game where the graphics for the bicks, frame and background is one layer and the high-score numbers etc is the other one.



Be aware that the Kernal functions will only work with one of the layers, I think it's always "layer 1".



Actually, it can more convenient if Layer 1 is the PETSCII layer, since then menus and otherwise "pop-ups" can have the pretty PETSCII drawing characters, while the underlying "page" on layer 0 can be selectable between ISO and PETSCII.

User avatar
codewar65
Posts: 67
Joined: Mon Aug 03, 2020 8:01 pm

ISO mode

Post by codewar65 »


@RebeccaRGB's Latin-9P font could be used with special output routines if you want to display PETSCII and ISO at the same time in your editors.



PETSCII-8 and Latin-9P

SlithyMatt
Posts: 913
Joined: Tue Apr 28, 2020 2:45 am

ISO mode

Post by SlithyMatt »



8 hours ago, kelli217 said:




Can one layer be in PETSCII mode and one layer be in ISO mode? That way, ISO characters for text could be overlaid with PET graphics for UX elements.



Yes, but you will have to copy the secondary character set to it's own space in VRAM. I show an example of how to do that in my last tutorial video: 





 

User avatar
ahenry3068
Posts: 1138
Joined: Tue Apr 04, 2023 9:57 pm

Re: ISO mode

Post by ahenry3068 »

kelli217 wrote: Thu Feb 18, 2021 7:46 am I am of the opinion that whenever practical, text-oriented programs should support ISO mode.

But the question becomes, "When is it practical?"

Part of that question hinges on what are the tradeoffs. One thing I can think of right away is the lack of PET graphics. They're very useful in implementing user interface elements; text-mode programs using ISO mode will have to work around this.

Any others?
I know this is an old thread but the points are still valid. One partial work around to the lack of PETSCII graphics would be to load an "IBM PC" type font while in ISO mode and use the IBM graphics set. It not at all a complete substitute but it does have some of the same functionality, for the type of Graphics used in Games it would take quite a bit of jiggering. For stuff things like Menu drop down, Dialog boxes and the like it wouldn't take a lot of effort to make a little lookup table for substitute characters depending on when the program is in ISO or PETSCII mode. viewtopic.php?t=6970
User avatar
AndyMt
Posts: 326
Joined: Sun Jun 21, 2020 3:02 pm
Location: Switzerland

Re: ISO mode

Post by AndyMt »

The problem with PETSCII is, that it "wastes" half the characters for it's inverse variants (to some degree even in iso mode). Which is not needed for the X16, as it has a foreground and background color for each character cell on screen.
It would be easy to define an IBM PC like charset with all PETSCII symbols included, it's 64 symbols (chars 64-128) in total. The IBM PC charset even has 80 graphic symbols (0 to 31 and 176-223).
Post Reply