TRIANGULAR μOS 1.11-1.19 for VIC-20 in BASIC

Basic and Machine Language

Moderator: Moderators

User avatar
chysn
Vic 20 Scientist
Posts: 1205
Joined: Tue Oct 22, 2019 12:36 pm
Website: http://www.beigemaze.com
Location: Michigan, USA
Occupation: Software Dev Manager

Re: TRIANGULAR 1.10beta2 for VIC-20 DOWNLOAD

Post by chysn »

TRIANGULAR OS wrote: Mon Apr 25, 2022 6:39 am BTW, anyone where to get screen memory start and color memory start in VIC-I graphic chip registers? Right know I have simple mechanism implemented to determine where screen memory starts: PRINT {cursor down} + character and if peek one of 2 locations (4096/$1000 or 7680/$1E00) )
Screen memory page is $0288 for start of character memory. And then

Code: Select all

lda $0288
and #$03  ; This came from the KERNAL disassembly around $ea77
ora #$94
the result will be the color memory page. In other words...

Code: Select all

SM = PEEK(648) * 256
CM = ((PEEK(648) AND 3) + 148) * 256
User avatar
TRIANGULAR OS
Vic 20 Dabbler
Posts: 87
Joined: Wed Mar 09, 2022 4:53 am
Website: https://www.youtube.com/@triangular_uos
Location: Cracow, Poland

Re: TRIANGULAR 1.10beta2 for VIC-20 DOWNLOAD

Post by TRIANGULAR OS »

chysn: thanks. Very useful.
TRIANGULAR μOS for VIC-20:
http://www.sleepingelephant.com/ipw-web ... =2&t=10352

TRIANGULAR μOS YouTube channel:
https://www.youtube.com/@triangular_uos
User avatar
TRIANGULAR OS
Vic 20 Dabbler
Posts: 87
Joined: Wed Mar 09, 2022 4:53 am
Website: https://www.youtube.com/@triangular_uos
Location: Cracow, Poland

Re: TRIANGULAR OS 1.10beta3 for VIC-20 DOWNLOAD

Post by TRIANGULAR OS »

OMG, it's nearly a month from my last reply and I promised release within a week. :shock: Sorry for that, but my own things plus sunny weather = very small amount of time for this project recently + I was a little stuck in experimenting with WORDS worprocessor formula.

TRIANGULAR OS 1.10Beta3 for VIC-20 is ready to release.

What's new:
- Various bugfixes and improvements across the board
- TRIANGULAR OS launching program improved
- BIOS small visual changed
- GUI program instead of DESKTOP. THIS PC renamed to THIS VIC.
- SETTINGS run from icon on desktop open folder with into two apps:
1. SYSTEM which can change time, work disk and printer options
2. COLORS can change background colors and patterns.
- WORDS instead of old WORD is completely overhauled
- MATH calculator improved: user can input numbers from keyboard
- 1 new game: REMEMBER 20. Try to recreate sound tune by pressing key 1-4. This is 10 liner created by Rainer Kappler (Masterware Entertainment).

PREVIEW (YouTube):


DOWNLOAD (Beta3):
TRIANGULAR OS 1.10beta3 VIC-20.zip
(14.37 KiB) Downloaded 82 times

Planned for future beta4:
- Further improvements and bugfixes
- Add sound Synthesizer program
- Add some additional games
Last edited by TRIANGULAR OS on Thu May 19, 2022 1:57 pm, edited 1 time in total.
TRIANGULAR μOS for VIC-20:
http://www.sleepingelephant.com/ipw-web ... =2&t=10352

TRIANGULAR μOS YouTube channel:
https://www.youtube.com/@triangular_uos
User avatar
TRIANGULAR OS
Vic 20 Dabbler
Posts: 87
Joined: Wed Mar 09, 2022 4:53 am
Website: https://www.youtube.com/@triangular_uos
Location: Cracow, Poland

Re: TRIANGULAR OS 1.10beta4 for VIC-20 DOWNLOAD

Post by TRIANGULAR OS »

TRIANGULAR OS 1.10Beta4 for VIC-20 release:

What's new:
- DISK program bug in start menu handling fixed
- MATH calculator: removed A <> B register swap
- SYNTH added synthesizer program for VIC. F5 & F6 vol down and up. F1-F4 Select one of VIC voices. Press keys to play. Space for elongate sound.
- 1 new game: Need for VIC. Racing game by Fabrizio Caruso. Controls: J and L keys

PREVIEW (YouTube):


DOWNLOAD (Beta4):
TRIANGULAR OS 1.10beta4 VIC-20.zip
(16.1 KiB) Downloaded 89 times
TRIANGULAR μOS for VIC-20:
http://www.sleepingelephant.com/ipw-web ... =2&t=10352

TRIANGULAR μOS YouTube channel:
https://www.youtube.com/@triangular_uos
User avatar
orion70
VICtalian
Posts: 4341
Joined: Thu Feb 02, 2006 4:45 am
Location: Piacenza, Italy
Occupation: Biologist

Re: TRIANGULAR OS 1.10beta4 for VIC-20 DOWNLOAD

Post by orion70 »

Nice! Congratulations on this. I have seen the video, and wonder if - for the sake of speed - one could jump directly from an app to the desktop, without loading back the apps group again (e.g., when you're done playing with Need for Vic, F7 or ESC brings back the desktop directly). Would this be too difficult to implement in a future release?
User avatar
TRIANGULAR OS
Vic 20 Dabbler
Posts: 87
Joined: Wed Mar 09, 2022 4:53 am
Website: https://www.youtube.com/@triangular_uos
Location: Cracow, Poland

Re: TRIANGULAR OS 1.10beta4 for VIC-20 DOWNLOAD

Post by TRIANGULAR OS »

orion70 wrote: Thu May 19, 2022 11:10 pm Nice! Congratulations on this. I have seen the video, and wonder if - for the sake of speed - one could jump directly from an app to the desktop, without loading back the apps group again (e.g., when you're done playing with Need for Vic, F7 or ESC brings back the desktop directly). Would this be too difficult to implement in a future release?
Thanks for great suggestion. That can be done very easy. I will change F8 to F7 for exit app. F8 (or Shift+F7 on real machines) will go to DESKTOP. Off course it will only work in non-windowed apps, since windowed ones can go back directly to desktop by clicking on Start Menu/Desktop.

My plans for near future: I will have to enhance WORDS app (it's still in works). Improve current 2 games and add 2 new. And probably will change REMEMBER 20 for something more aspiring. Plus will try to convert my STAR WARS shooter from PET (I'm stuck with it somewhere in the middle of conversion from 40 to 22 column display). And after some general improvement, debugging, finetuning I will be able to release full version of TRIANGULAR OS 1.10 for Commodore VIC-20 5KB. I would like to finish this version before summer (somewhere in June).

My long term plans: I won't be gradually converting it to ML, as originally planned. First I will convert it to C64 (still BASIC version) in original form (as it is right now). Then I will try to consolidate it into few bigger files, add sprite mouse cursor, sprite TIRANGULAR start menu orb, custom fonts, maybe add turboloader. I would like to finish converting + consolidating C64 BASIC version during this summer.
And from there either convert OS core (BIOS + GUI) to ML or better go straight forward for cartridge version (more advanced ML version). Cart version seems very tempting, especially for VIC-20 (especially, because it can run on lowest 5KB machine). We will see.
Last edited by TRIANGULAR OS on Thu May 26, 2022 4:16 pm, edited 7 times in total.
TRIANGULAR μOS for VIC-20:
http://www.sleepingelephant.com/ipw-web ... =2&t=10352

TRIANGULAR μOS YouTube channel:
https://www.youtube.com/@triangular_uos
cobracon
Vic 20 Dabbler
Posts: 74
Joined: Thu Nov 11, 2010 5:46 pm

Re: TRIANGULAR OS 1.10beta4 for VIC-20 DOWNLOAD

Post by cobracon »

I'm really digging this new program. I think it would be cool to put on a cart once its done. Would make it work like a real os gui. Would really be cool if we could use a mouse on a vic-20. Don't know if a mouse would even work? I have a mouSTer (think thats what its called) that can emulate a 1351 commodore mouse. Keep up the great work.
User avatar
orion70
VICtalian
Posts: 4341
Joined: Thu Feb 02, 2006 4:45 am
Location: Piacenza, Italy
Occupation: Biologist

Re: TRIANGULAR OS 1.10beta4 for VIC-20 DOWNLOAD

Post by orion70 »

Yep a kind of Magic Desk I for the VIC - but impossible to fit in a cart being a multi-load, multi-app packet, isn't it?
User avatar
Mike
Herr VC
Posts: 4841
Joined: Wed Dec 01, 2004 1:57 pm
Location: Munich, Germany
Occupation: electrical engineer

Re: TRIANGULAR OS 1.10beta4 for VIC-20 DOWNLOAD

Post by Mike »

orion70 wrote:Yep a kind of Magic Desk I for the VIC - but impossible to fit in a cart being a multi-load, multi-app packet, isn't it?
It is perfectly possible to provide a CBM DOS like file system on cartridge. Kananga did this with the FE3 RAM Disk for read and write access; write-only, non-volatile file data could be held on (EP)ROMs.
User avatar
orion70
VICtalian
Posts: 4341
Joined: Thu Feb 02, 2006 4:45 am
Location: Piacenza, Italy
Occupation: Biologist

Re: TRIANGULAR OS 1.10beta4 for VIC-20 DOWNLOAD

Post by orion70 »

Yep this would be nice, but maybe a bit expensive.. I was thinking about MCes' Jolly Cart, which for that purpose wouldn't fit.
User avatar
Mike
Herr VC
Posts: 4841
Joined: Wed Dec 01, 2004 1:57 pm
Location: Munich, Germany
Occupation: electrical engineer

Re: TRIANGULAR OS 1.10beta4 for VIC-20 DOWNLOAD

Post by Mike »

orion70 wrote:[...] which for that purpose wouldn't fit.
Such a read-only resource file system is implemented in about 1 KB of code plus whatever is the combined size of the files contained in the "ROM disk" plus a bit of extra info, like file names, file position and size info.

A cartridge with banked memory areas (like FE3 is) is not a pre-requisite for this, a simple unbanked memory card with 32K ROM could hold at least 8 files/programs for the unexpanded VIC-20 this way.
User avatar
orion70
VICtalian
Posts: 4341
Joined: Thu Feb 02, 2006 4:45 am
Location: Piacenza, Italy
Occupation: Biologist

Re: TRIANGULAR OS 1.10beta4 for VIC-20 DOWNLOAD

Post by orion70 »

I see - my question now is (and the answer would be very informative and didactic here Mike :) ), would these programs / files be able to "talk" to one another, i.e., load one another, get back to desktop, etc?
Please pardon my ignorance in the matter :mrgreen:
User avatar
Mike
Herr VC
Posts: 4841
Joined: Wed Dec 01, 2004 1:57 pm
Location: Munich, Germany
Occupation: electrical engineer

Re: TRIANGULAR OS 1.10beta4 for VIC-20 DOWNLOAD

Post by Mike »

orion70 wrote:[...] would these programs / files be able to "talk" to one another, i.e., load one another, get back to desktop, etc? [...]
That is exactly the point of providing the data as files in a file system, opposed to just being memory blobs located somewhere in the cartridge ROM: the former allows to access the files via LOAD (from BASIC or KERNAL, regardless), the latter would require raw access via memory transfer routines in machine language (and thus present a non-standard interface to user programs).

The file system driver actually encapsulates those memory transfer routines, so programs have no idea they're not running from disk or tape, but rather a cartridge based "ROM drive".
User avatar
TRIANGULAR OS
Vic 20 Dabbler
Posts: 87
Joined: Wed Mar 09, 2022 4:53 am
Website: https://www.youtube.com/@triangular_uos
Location: Cracow, Poland

Re: TRIANGULAR OS 1.10beta4 for VIC-20 DOWNLOAD

Post by TRIANGULAR OS »

Update: Beta5 work in progress.

So far I've added 2 new games. Currently working on 3rd game, which will replace Remember 20. Although I originally planned more than 4 games, I will stick with this number. I will have to improve them.

Next will try to improve WORDS, minor improvement of SYNTH and make some minimal visual changes to GUI. Also I'm planning to alter loading screen, precisely to change hourglass to something smaller (hourglass seems to be too big, out of proportions). I will submit proposals later. And that will be Beta5.

Then Beta5 will be improved & debugged. After that either I will release RC (release candidate) or Beta6 (if debugging will go slowly). First RC0, then RC1 and after everything will be OK will add some protective measures like make disable upper/lower char, disable run/stop, revert loading messages back to black etc.

As for cart version, I would like to put on cart only OS core. That is: BIOS, GUI with system folders, SETTINGS, DISK. Rest of system (apps, games) will be on system disk. I have question about that. Cart OS will be ML, but can some apps be in BASIC (I don't know if I want to for example convert games to ML)?
Last edited by TRIANGULAR OS on Sun Jun 12, 2022 11:51 am, edited 2 times in total.
TRIANGULAR μOS for VIC-20:
http://www.sleepingelephant.com/ipw-web ... =2&t=10352

TRIANGULAR μOS YouTube channel:
https://www.youtube.com/@triangular_uos
User avatar
Mike
Herr VC
Posts: 4841
Joined: Wed Dec 01, 2004 1:57 pm
Location: Munich, Germany
Occupation: electrical engineer

Re: TRIANGULAR OS 1.10beta4 for VIC-20 DOWNLOAD

Post by Mike »

TRIANGULAR OS wrote:Next will try to improve WORDS, [...]
When one enters a single text line, and then scrolls up and down a few times, WORDS crashes with an ?OUT OF MEMORY error. Doing a ?FRE(0) reveals there are still some 900 bytes free, so this crash is likely due to mismatched GOSUBs filling up the stack.

More info:

viewtopic.php?t=10195&start=6&hilit=GOSUB

viewtopic.php?t=10252&start=21&hilit=GOSUB

This is a category of errors that better should not be permanently fixed into a cartridge ROM ...


Edit: also the boot procedure immediately stops in VICE, when True Drive Emulation is off and VICE accesses the disk image with VDrive. Your boot loader tries to determine the disk drive type with a M-R command, which likely returns some unexpected value here. Unfortunately, you did not guard ASC() by concatenating CHR$(0) to the read-in character - GET# errorneous reads in CHR$(0) as an empty string, ASC() doesn't like this, therefore something like:

GET#...,A$:A=ASC(A$+CHR$(0))

... is the way to go here.
Post Reply