Development By Design

A place to discuss the free Linux and Windows games and development options available on Commodore OS, games available through Steam and other vendors, and Windows(WINE) compatible games in general.
Post Reply
WildWinnita
Posts: 1
pinterest Kuchnie na Wymiar Warszawa
Joined: Thu Dec 26, 2024 10:36 am
Contact:

Development By Design

Post by WildWinnita »

A Misguided Principle

Hi. Hello there, I have a question and some follow up suggestions. I've been looking at the design language and layout of the Vision Software.
I have seen a lot of crtisism about this being an obvious Linux Distro. In honesty, I have zero problems with that.
I probably would have preferred an Android Distro but I understand that is harder to set up, develop and distribute than assembling a linux package. The systems to set up a distro for Linux has been well explored.

What I would like to talk about is a basic principle of Commodore in the original era. Software Development Out of the Box.
Prior to the availability of Tape Drives, and later Disk Drives, the primary selling point of the Commodore was the ability to write your own software. As opposed to just running cartridged. The idea of the C=Basic operating system as both a DOS system and a basic operating system was core to the intial programming of the hardware.

The Vision operating system is. Just that an operating System.
While I understand that modern audiences don't want to have to write their own software, and more importantly want to use software they know. The Vision OS fails to even meet the minimum requirements of a Commodore Operating System.
What I propose is what I would like to call:

The Commodore Dev OS
Imagine this. You start up your Laptop, Tablet or Commodore PC>
And are greated by the classic Blue Screen.
It says "Commodore DEV Terminal" with the C= logo but has something new. A Mouse cursor, and Taskbar. The icons on the taskbar are Labelled:
  • Terminal
    Apps
    Files
    Projects
    ----------
    ( List of Apps )
And on the far side of the screen, the time and the Godot logo.. Why Godot? Cause it's open source. You could use any other game or software deleopment company that's open source.
Cause here is the Important element. The Commodore Dev OS would come packaged and be build with Software Development in mind.

The Commodore Terminal while able to accept commodore commends:

Code: Select all

Load $ "Apps/*"
List $
Google | Chicken Run | Lots of Apps | Portal
Ready
Load $ Chicken Run
Run
Would also act as the output screen for game project development. In the Apps section would be Map Editors, Model and Graphics editors, a Script editor and the ability to natively run the projects.
The Files Folder would be divided up in a way that allows any Apps not managed by a package manager to be edited by the software editor.
People would be able to play with things like the calander, open them up and look at them.

And because this is using an open source programming language : a variation of Commodore Basic would be added to the available scripting languages. Allowing the engine to both compile and run old school Commodore games, while also being a platform for game developers.

Anyhow. I'd like to know what opinions people have on this.

User avatar
LeoNigro
Site Admin
Posts: 298
Joined: Mon Aug 14, 2023 1:29 pm
Contact:

Re: Development By Design

Post by LeoNigro »

Hi WildWinnita,

Welcome to the forum.
A Misguided Principle
If this is in reference to Commodore OS I would counter perhaps that it is a miss-understood principle. :D
I am obviously, and understandably, in an echo chamber on the forum, and am not aware of this criticism. :mrgreen:
This forum is the place to be to engage in community discussion about the future of Commodore OS and maybe even the Commodore brand.

I do know that there will always be detractors, as Commodore is a much beloved brand with many fans, and anything bearing the moniker will come under intense scrutiny. Every fan has a different idea or philosophy on what the ultimate Commodore Operating System should be. I am one of those fans. That friend's VIC-20, my C64 and later Amiga inspired my whole tech experience and ~30 year software development career. I've spent many, many years on various Commodore and Amiga related forums and I know first hand how diverse people's ideas and opinions can be and how sure they can be that their way is the only way. Whilst an array of lofty ideas may be possible they, by necessity, are tempered by time, knowledge, resources and even legality. I decided to do something, which many people fortunately, consider a positive. Maybe better people could have done better, which is always going to be the case.

But first let me attempt to explain why things are the way they are.
Commodore OS's raison d'etre has, and always will be, as the base install of the Commodore C64x (and other all-in-one keyboard PCs), which Barry Altman and I conceived in 2011 at Commodore USA LLC, and potentially any future Commodore branded machines, should we be so lucky. At the time we thought it would be really cool to supplement our machines with an OS option that was uniquely Commodore. Various things were considered, especially AROS, but there were legal complications(due to our Amiga brand licensing) that prevented that from occurring. The whole Commodore landscape has been a quagmire of legalities. The linux ecosystem is exceptional, and basing a branded OS on a derivation of it is a no-brainer.

Right now, and for the foreseeable future, Commodore is a nostalgia brand just as Atari is, and Commodore OS aims to satisfy that audience, but rather than base Commodore OS on the limitations of the software of the eighties, provide the modern capabilities possible on today's hardware. I could have figured out something like Combian or had FreeDOS launch a C64 emulator, but today's hardware provides the potential to be so much more than that. Commodore OS can be used as your daily driver OS, or as an OS you turn on when you want to experience some nostaligia driven fun, with whizz bang spinning cube graphics with retro sounds. I see it as retro futuristic, kinda like steampunk. It's my VISION(geddit) of something like Commodore would have eventually produced. Unlike Atari, Commodore is seen by the public as more of a computer brand rather than a console brand, thus the focus on a desktop environment. The machine can be more than just a means to peruse your retro games (although there will be a renewed focus on that in COS3).

The release of Commodore OS to the public is to foster community and good will towards the brand, and is my attempt to keep the brand alive in people's minds. To maybe wake people up to the fact that you can actually buy a Commodore branded PC, and that when you do, you may find the experience rekindles that special, exciting experience you had in your youth when you were open to so many possibilities.

I take it you've seen Perifractic's awesome Retro Recipes video where I am so gratified when he expressed that emotion.
https://www.youtube.com/watch?v=JG1TdfezJzo&t=852s.
Commodore OS is also featured in the current edition of Zapp!64 magazine. Yeah it's still going!!!
https://fusionretrobooks.com/collection ... 4-magazine Retro is alive and kicking baby!!!

COS1 from 2011 came with a plethora of modern development environments that made sense at the time.
COS2 from 2023 focused more on returning the look and feel of the original, covering an array of general use cases.
In terms of development options COS2 came with Gambas BASIC and more general development environments like MonoDevelop and Visual Studio Code. IIRC Java and Python are pre-installed. Development Environments and technologies are a very individual thing, where any software development professional would need to install a very distinct set of technologies for their particular project goal, so I focused on more accessible (potentially beginner) cross-compatible environments.

I've been going back and forth with whether COS3, which is currently being put together, and is based on the current kernel LTS, should release early and merely reproduce COS2, or evolve even further. The earlier release option is pertinent due to some COS2 hardware compatibility issues.
So as a compromise(always a compromise) it will be something in between. Something that pushes a little further, but I haven't got time to go crazy and put in everything I would love to develop right now. There will be some things waiting on the backburner for either an update or COS4.
I have seen a lot of crtisism about this being an obvious Linux Distro. In honesty, I have zero problems with that.
COS has never purported to be anything other than a Linux Distro and I repeatedly mention it is an unofficial MX Linux respin which might be regarded as a respin of Debian. There had never been a Commodore OS and the feeling at the time, back in 2011, is that it would be a cool name, like AmigaOS, AtariOS, MacOS(based on BSD) etc. I also felt that if I called it something like Commodore Linux from the start it might incorrectly imply that it is business oriented, rather than consumer oriented. I was adamant that it not be yet another boring no thrlls, Linux business distro. If you like that stuff, you can install that stuff whenever you want. There's hundreds of them. To borrow a famous phrase let's "Think Different".

The focus of Commodore OS is on fun, and retro nostalgia, that the C64x also conveys. That it covers practically every use case is a bonus.
Your post is the first time I have ever heard it be suggested that Commodore OS should have been based on Android.
I can understand maybe AROS, which is an Amiga OS variant, but Android??.....I have no idea what we'd gain from that.
I did briefly consider including something like Bluestacks so you could run some Android apps, but that only opens up another can of worms.
What I would like to talk about is a basic principle of Commodore in the original era. Software Development Out of the Box.
You sooooo came to the right place. Let's go!
While I understand that modern audiences don't want to have to write their own software, and more importantly want to use software they know. The Vision OS fails to even meet the minimum requirements of a Commodore Operating System.
So harsh right out the gate. :o
Okay, I guess I'll swallow my pride and keep listening. :lol:
The Commodore Dev OS would come packaged and be build with Software Development in mind.
I do wonder if you have actually run Commodore OS? There's a whole "Programming" section available from the "Applications" menu.
Admittedly there are currently a few options(that will only grow) but there is an argument for not overwhelming people.

If you wanted to launch straight into a terminal you could easily configure that. A retro bash terminal is available straight from the dock.
I doubt many people would forgo a windowed environment for a terminal only experience.
That won't really cut it current year and such a thing would be a a niche of a niche.
You can do it easily though. I can show you how to do it very easily if you are interested, and we can have a whole discussion about it.
Would also act as the output screen for game project development. In the Apps section would be Map Editors, Model and Graphics editors, a Script editor and the ability to natively run the projects.
What you want is something like the PICO-8 fantasy console environment....(I'm investigating options to include it in some manner)
Presumably Godot has tools similar to these. I hope to include it in COS3.
I'm also intending to include CBM prg Studio which has these kinda features for 8-bit BASIC development. (it's a little buggy, but hey it works)
I'm thinking of including BlitzMax which is a modern remake of Blitz BASIC which was popular on the Amiga.
I want to include SDL BASIC (kinda wishing version 3 would launch).
There are few other C retro programming resources I will include, and a section that will grow to include links to recommended instructional material.
I've got to do some more investigation but if it's free and works I will also include the Scorpion Amiga game making environment.
I am open to further suggestions....
The Files Folder would be divided up in a way that allows any Apps not managed by a package manager to be edited by the software editor.
You mean you want to edit the menu. You can already do that in Commodore OS. I won't stop ya!!
You can put folders wherever you want. You could even use Symlinks to fake the file hierarchy you want.
The Nano editor is available from the terminal too. I'm not really about to install something like vi or emacs but you could easily.
And because this is using an open source programming language : a variation of Commodore Basic would be added to the available scripting languages. Allowing the engine to both compile and run old school Commodore games, while also being a platform for game developers.
Well, Commodore BASIC is available within the C64 emulation. Either the C128 or C16/Plus4 emulation has the latest official Commodore BASIC version I believe. I can't distribute AMIGA BASIC I don't think and I probably wouldn't care to given the strength of alternatives.
You want to go write a Commodore BASIC interpreter, go right ahead, and I'll be most happy to include it.
Bash is today's interpreted scripting alternative available from the CLI, and Python is THE beginner language these days.
As Commodore BASIC always had line numbers a modern compatible remake wouldn't be taken seriously as a BASIC these days, and it would never be backwards compatible anyway as you can't expect to POKE around.

What you are asking for may actually be available in the Commander X16. It has an updated version of Commodore BASIC.
I intend to include Commander X16 emulation and development resources. I love that project (and a big 8-bit guy fan) and want it to succeed.
Maybe one day they'll produce a mini-ITX version so MyRetroComputer could retail a C64x case variant for it.
A Commodore X16 would be so cool!!!!

BTW. It's like you read my mind with the commands.....The universal emulator launcher command in COS3 will be called LOAD.

Code: Select all

LOAD "yourC64game.d64"
LOAD "yourAmigaGame.adf"
LOAD "yourGameFileImagesZipped.zip"
will load the ROM in the correct emulator based on the extension or a hint related to the folder name, and try to attach additional numerations of disk image files to additional drives. If a zip/rar/lha is encountered it will decompress to a temp folder and then try to work it out.

Code: Select all

LOAD "SETTINGS"
will launch the Commodore OS Settings manager. And there will be a bunch of other things.

Code: Select all

LOAD "https://www.google.com/search?q=your+search"
will launch the Commodore OS containerized browser app as you're not going to want the results in a text mode terminal, unless you want me to include the lynx browser.

Code: Select all

LOAD "https://archive.org/compress/GameBase_IntroBase64_V01/formats=RAR&file=/GameBase_IntroBase64_V01.zip"
Will download a file. :D Yes, it's just a wget wrapper.

Code: Select all

LOAD "https://archive.org/download/GameBase_IntroBase64_V01/GameBase_IntroBase64_V01_archive.torrent"
will start downloading as a torrent (In another workspace preferably) and running it again will resume the torrent.
I can also alias all the bash commands if you think it helps.

To make you happy (or perhaps infuriate you, you never know :lol: ) I will be sure to alias the DIR or ls command as LIST or list

Code: Select all

LIST filter*
Would filter the list starting with files with filter etc. I could even format it the same way the C64 does if you really want to.

Code: Select all

LOAD "$",8 
Then when you type LIST I'll look for a file the LOAD generates and list that in the C64s file list format.
Would you find that fun? Is that worth doing?
I could also alias echo as PRINT or print.

Code: Select all

PRINT "This is starting to get silly"
Anything more than that you can think of let me know.
We can have some fun with this. That's the whole point of Commodore OS.
Want to include some Amiga DOS commands? Let me know.
Any other commands we can "commodorize" let me know.

I welcome constructive criticism and feedback as I see Commodore OS will evolve through different phases in terms of focus and refinement.
Your post contains some interesting ideas and you will see as you peruse the forum that some of these ideas have actually been discussed.
I hope you can understand as I do that it is unlikely that Commodore OS can be all things to all people.

I think a modern terminal based OS is a bit of a stretch for today's computer consumer. I think there may be a linux distro that does something like you're after. All the other stuff you mentioned is doable and a lot of it is in the works.
Thanks for your suggestions. I can't promise I'll follow through with all of them, but you may find that a fair few of those will be available within Commodore OS upon its next release.

Take care,
Leo
Image Commodore OS creator. Site Admin. Owns: C64, C128D(Sidekick64), A500, A1000(piStorm), C64x(i7)

User avatar
LeoNigro
Site Admin
Posts: 298
Joined: Mon Aug 14, 2023 1:29 pm
Contact:

Re: Development By Design

Post by LeoNigro »

Rereading your post and its implications, it sounds like you want the capability to rewrite or tweak code in the provided apps. That is what Git and Github is for. You can edit any app in the repository because they're all open source and mostly written in C.

I think what you are really asking for is something like GameMaker. It looks like it is free and available for Linux(Ubuntu).
From the site "All versions of GameMaker are completely free to download. You’ll only need to pay if you plan to release your game commercially or if you’d like to export your games to Console platforms." So if you want to make a free game there's no payment needed.
If it works consider it included in COS3.

I would also include GDevelop, Unity and Unreal Engine but they seem to require registration.....so no.

Scratch will be included by the way, which is a drag and drop programming environment for beginners. My son loved making animations with that at school when he was around 7.

There is Love2D, which has Lua as the programming language. I'm not fond of Lua. We really would prefer BASIC on our Commodore. :evil:
So, maybe not. It would plug into Visual Studio Code though. Errr Nah.
That reminds me on an Amiga dev environment that also uses lua called Hollywood X by Airsoft, but that is far from free.

There is also SMFL (Simple and Fast Multimedia Library)......but they have everything except a BASIC binding.

Hmmm...There's BASIC256. That actually might have something exactly like what you're after. Perfect for beginners.
Not many online resources though that I can find. It is out of development but there is a fork.
You could fork it again and make it exactly what you want. It looks like it is written in C++ with Qt.
Image Commodore OS creator. Site Admin. Owns: C64, C128D(Sidekick64), A500, A1000(piStorm), C64x(i7)

Post Reply

Who is online

Users browsing this forum: No registered users and 0 guests