Hi, from a millenial.

Come in and say hi. Let us know a little about you and where you heard about the Commander X16 or this forum.
Post Reply
void_null

Hi, from a millenial.

Post by void_null »

I know I'm too young to remember the commodore. I only found out about it when I was looking retrocomputing stuff. I had no idea the commodore even existed until I ran into the 8-bit guy's channel.

So why would someone who clearly has no nostalgia for 80s computer want one? Simply put, I hate what modern computers have become. I want something transparent, that I can keep and maintain as long as I want. I also desire privacy (as my screen name probably suggests). Also, to me, this thing is the ultimate retrogaming device. A true retro machine that will surely be easier to find parts for than a true 80s computer.

I would love to be a developer for this thing. I am a certified programmer (associate's degree). Of course, the modern tech industry isn't for me. I have tried to learn to program on the emulator, but I just can't find material for it. Everything I can find seems to be designed for someone who is already familiar with the commodore, which obviously I am not. I did try to learn from the actual manual for the commodore, but half of the programs on it wouldn't work on this thing. I have also tried to learn assembly using the thing's built-in assembler, though I've had an issue in that it won't save my work properly, which is a drag.

Of course, I have a bit of a problem in that when it comes to games I want to clone, I mostly think of stuff from the early 2000s (I am a millennial after all). I do have some experience with 8-bit devices, namely the gameboy and NES. Honestly, I was surprised when I found out that both the nes and genesis were actually 80s devices. I was playing my NES throughout the early 90s! I thought both machines were early 90s tech. Sadly, I'm not too interested in cloning games from those systems (other than maybe pokemon, but let's be real that project is pretty obvious so someone's probably going to beat me to it).

Of course, obviously this thing can't run 2000s games, so they're going to need a downgrade. Fortunately, a quirk about early 2000s games is that they were as I put it '3-d in graphics only'. The game play of most of the games I can think of was actually 2d. They literally only had 3d graphics because it was expected!

To give an idea of what I want to do with this thing, I can think of three games I would like to re-make (excluding a pokeclone of course).
One is Magic the Gathering Battlegrounds. Its an old obscure game I've always loved and would like to keep. My old disc still works, and somehow it does work on windows 10, but obviously I'm not expecting that to last forever. That game wouldn't be too hard to do. The AI in particular was stupid ultra simple. I have no doubt in my mind an 8-bit device could seriously emulate it was to simple and predictable. The game would only have at max 11 animated sprites on screen at once, which I hope isn't too much to ask for? The biggest problem with the thing though, that may completely destroy my hopes of cloning the thing, is that voice acting is necessary for the gameplay to work! You see, you have the ability to respond to enemy spells, and in the game the player characters literally recite the name of the spell they're casting. Obviously, I can't just use the original voice files (besides, I was thinking of making my own spells, which also hopefully help fix that game's balance issues). I guess I could use some voice synthesizer, but I haven't seen anyone develop one for this system yet. I was also thinking of giving it some sort of 'science fantasy' them, like the Phantasy Star series, mainly due to the fact that the voices are surely going to sound robotic.

Either way, that's my least ambitious project. I've always loved the warcraft games. I've played both 2 and 3, and also both starcrafts. These games would be hard to do though, since they would ask a lot out of the system. Possibly dozens of animiated sprites on screen at once, all following a pathing algorithm of some kind. I was thinking of something like warcraft 3 but with warcraft 2-like graphics. Warcraft 2 was a sprite-based game, albeit one I think designed for DOS machines (I played the playstation 1 port). Warcraft 3 emphasized micromanaging small armies, which I was hoping would help reduce the number of sprites on screen. Of course, as if it somehow isn't obvious, another MAJOR problem for this project is that the 8-bit guy is making a version of planet x3 for the system! So yeah, me or anyone else who makes an rts would now be competing with the man who made the computer. What luck.

The most ambitious thing by far though, would be a sims clone. I used to love the Sims 2, however that game doesn't work on modern computers, and EA is a worthless company that hates the retrogaming scene. Of course, a game like that is a VERY tall order. The biggest problem with it is it requires units with customizable appearances. Even ignoring faces, there would have to be a HUGE number of clothing options, and the number of sprites needed for these would be multiplied by the total number of animation frames! Aside for the ludicrous amount of work it would take to make such a thing, the file size could be MASSIVE. Clearly, sprite reversal would be needed, and luckily being an older system I would guess this thing supports palette swapping? Still, that wouldn't help much. I mean, the information the ram would need to contain may be too much. I was thinking there may be a way to minimize it though. Instead of having possibly dozens of animated sprites all overlapping each other, it may be possible to 'concatenate sprites'. Basically, you have the machine replace each pixel in sprite 0 with the ones in sprite 1 one by one, ignoring transparent pixels. Now, you would have only one sprite on screen. Of course, the obvious problem with this is it could increase loading times, and it may require a loading screen every time an npc switched to a different animation. Honestly, I highly doubt this thing could be made to work, though at the same time I don't have a good understanding of the limitations of the system. Either way, this probably isn't a machine for any game that requires procedural generation, aka what 3d graphics fundamentally way. You just make a model, and the computer decides how to distort it to generate all the animation frames.

I guess pokeclones and other top-down rpgs may be the most elaborate thing I should expect from the system. Now surely here this thing could handle a gameboy clone, considering it beats out all the specs of even the NES?

And yes, I have some lofty goals in mind. Hopefully I'll be accepted here. I wasn't too welcome on the retrocomputing sub-reddit, since obviously despite approaching 40 I'm still too young to remember 8-bit computers. I don't know how many other 'young' people are taking an interest in this thing, but clearly there is at least one.

Sorry for the long post, and yes I'm a bit prone to doing that. I've been trying to be better about it, but this is an introductory post and obviously I had a lot to say. Here's hoping I can be a part of this project, and not have to just be another user.
Edmond D
Posts: 489
Joined: Thu Aug 19, 2021 1:42 am

Re: Hi, from a millenial.

Post by Edmond D »

Welcome to the community!

Like the X16, the documentation is still under development. Take a look at https://github.com/commanderx16/x16-docs to start and consider visiting https://justinbaldock.wordpress.com as he has been working on a book called "Learning BASIC on the Commander X16.pdf" See viewtopic.php?p=25578#p25578 to get a draft copy.

Given the games you've mentioned, perhaps a different language such as Prog8, C, Forth (does anyone write games in that language?) or even assembly is going to outshine basic for implementation. There may be some bumps along the way, but there is a great community here that has supported many on their learning curve.

Do consider reading through the many forum posts here as well; there is a wealth of info!
EbonHawk
Posts: 17
Joined: Thu Mar 16, 2023 10:37 am

Re: Hi, from a millenial.

Post by EbonHawk »

I've also seen this book mentioned as well, so I'll list it too:
Programming the 65816 (Including the 6502, 65c02, and 6802)
http://archive.6502.org/datasheets/wdc_ ... manual.pdf

I'm only on page 13 so far, but it seems like it will come in very handy.
void_null

Re: Hi, from a millenial.

Post by void_null »

Edmond D wrote: Mon Apr 03, 2023 11:10 pm Welcome to the community!

Like the X16, the documentation is still under development. Take a look at https://github.com/commanderx16/x16-docs to start and consider visiting https://justinbaldock.wordpress.com as he has been working on a book called "Learning BASIC on the Commander X16.pdf" See viewtopic.php?p=25578#p25578 to get a draft copy.

Given the games you've mentioned, perhaps a different language such as Prog8, C, Forth (does anyone write games in that language?) or even assembly is going to outshine basic for implementation. There may be some bumps along the way, but there is a great community here that has supported many on their learning curve.

Do consider reading through the many forum posts here as well; there is a wealth of info!
Well, I realize to get the best performance I would need to code in assembly. I mostly have certificates in modern web development languages. I do however have a certificate in c++. I have tried to learn c in the past, but couldn't find any info on it. Not sure how well that would do here though. Assembly would surely beat everything, but c would surely be better than basic (though I am kinda curious how it would compare to 'blitzed' basic, the last youtube video mentioned that being implemented).

That said, I have contemplated getting my feet wet by making stuff in basic. I'm aware such things probably wouldn't be too useful, but its a starting point. Besides, from what I've seen even programming in basic requires you to interact with the computer on a super low level (such as poking to the i/o section to interact with the vera).

Though I must say I have been having problems typing in programs. I tried to copy the 8-bit guy's 'lightning' program, but I couldn't figure out how to type eithre / or \ in the emulator for some reason; one just prints a British pound sign.
paulscottrobson
Posts: 305
Joined: Tue Sep 22, 2020 6:43 pm

Re: Hi, from a millenial.

Post by paulscottrobson »

Your choice of the Commodore manual (the Vic20 one is good, though may be too simple for you !) is a good one.

However, I would suggest you do this on the C64 itself, because while the X16 is similar at a trivial level, anything else it isn't. I wouldn't use an actual C64 - you could use Vice or a similar emulator, or maybe even the C64 hardware clone "The C64" I'm told it's called, helpfully :)

Now, you may think, ah but I want to program the X16. In reality, if you learn to program Commodore BASIC, 6502 assembler or whatever on the C64, most of those skills will transfer to the X16. It's a more powerful machine, but it's the same idea - you write to this memory location to draw this sprite, or whatever.

The ideas are much the same, and you will find they generalise quite easily.

Another option is to use Matt Heffernan's assembler tutorials (doing some BASIC on the C64/Vic will help you understand this) which are X16 specific, I think he's called "slithymatt".
paulscottrobson
Posts: 305
Joined: Tue Sep 22, 2020 6:43 pm

Re: Hi, from a millenial.

Post by paulscottrobson »

EbonHawk wrote: Tue Apr 04, 2023 3:03 am I've also seen this book mentioned as well, so I'll list it too:
Programming the 65816 (Including the 6502, 65c02, and 6802)
http://archive.6502.org/datasheets/wdc_ ... manual.pdf

I'm only on page 13 so far, but it seems like it will come in very handy.
There are countless books on 6502/C64/Vic programming especially at all sorts of levels, and most of them are available as PDFs, so just dig around until you find one whose style and difficulty you like.
mortarm
Posts: 298
Joined: Tue May 16, 2023 6:21 pm

Re: Hi, from a millenial.

Post by mortarm »

paulscottrobson wrote: Tue Apr 04, 2023 8:45 am ..."The C64" I'm told it's called, helpfully :)
Correct. There's two versions, the Mini and the Maxi. The Maxi is the one that looks and works like an original C=64.
User avatar
ahenry3068
Posts: 1132
Joined: Tue Apr 04, 2023 9:57 pm

Re: Hi, from a millenial.

Post by ahenry3068 »

Modern systems are very complex. On a modern X86 system the only way to get full Hardware
Control would be to write a complete Operating system. I like the full hardwar control on early
DOS systems.
Post Reply