News:

Printed Amstrad Addict magazine announced, check it out here!

Main Menu

How would you attempt a CPC game creator?

Started by Trebmint, 09:05, 12 July 10

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

jbaudrand


TFM

You need very clear standarts for the plug ins  ;)
TFM of FutureSoft
Also visit the CPC and Plus users favorite OS: FutureOS - The Revolution on CPC6128 and 6128Plus

Trebmint

Quote from: TFM/FS on 00:47, 28 September 10
You need very clear standarts for the plug ins  ;)

This is very true. Mainly its about keeping code relocatable. Currently I have a very ordinary assembler, but I plan a number of syntax additions, like referencing global jump points or variables so limiting the plugins range of access. Plus commands to reference local vars to GUI objects like a slider or a dropdown.

In theory it should be very simple to use once you get the hang of it. We'll have to see if the actual coding lives up to the plans though :)

jbaudrand

don't hesitate to use me as a totally newbie guinea pig

TFM

Quote from: Trebmint on 09:44, 28 September 10

This is very true. Mainly its about keeping code relocatable. Currently I have a very ordinary assembler, but I plan a number of syntax additions, like referencing global jump points or variables so limiting the plugins range of access. Plus commands to reference local vars to GUI objects like a slider or a dropdown.

In theory it should be very simple to use once you get the hang of it. We'll have to see if the actual coding lives up to the plans though :)

Hmm, you talk about "relocatable code" and of GUI elements... do you plan to make the Game Creator for SOS? There you would have already GUI elements and since you have done SymStudion, you already know how to use SOS. I'm just curious :)
TFM of FutureSoft
Also visit the CPC and Plus users favorite OS: FutureOS - The Revolution on CPC6128 and 6128Plus

Trebmint

Quote from: TFM/FS on 18:01, 29 September 10

Hmm, you talk about "relocatable code" and of GUI elements... do you plan to make the Game Creator for SOS? There you would have already GUI elements and since you have done SymStudion, you already know how to use SOS. I'm just curious :)

No as far as I know Symbos is dead until Jorn ressurrects it. The GUI is for the PC based application not the CPC side, and is designed to allow control for the user over the plugin. Effectively so you can add textbox, slider, dropdown, countbox etc which are all directly linked to z80 variable all via z80 assembler

betpet

I had Laser Basic but just couldn't get my head around the manual (I was 11 years old at the time though!)
Old Amstrad CPC 6128 owner. New Amstrad CPC 464 and 6128 owner. Getting back the love!

jbaudrand

I've starting wiith Laser manual  too, it's defintely not for beginner, the manual from Sprites alive is better, haven't the time to workaround the demo yet... but I think  the ability of printing the listing on the PC will make my life easier.


redbox

Quote from: jbaudrand on 10:21, 30 September 10
I've starting wiith Laser manual  too, it's defintely not for beginner, the manual from Sprites alive is better, haven't the time to workaround the demo yet... but I think  the ability of printing the listing on the PC will make my life easier.

Z80 assembler really isn't that hard and it's great fun to program.

Plus there's loads of online websites with source code and if you get stuck you can always ask on this forum as it's frequented by some extremely talented programmers (just look in the programming section).

betpet

Quote from: redbox on 10:39, 30 September 10
Z80 assembler really isn't that hard and it's great fun to program.

Plus there's loads of online websites with source code and if you get stuck you can always ask on this forum as it's frequented by some extremely talented programmers (just look in the programming section).

Yeah, and I frequent there too :)
Old Amstrad CPC 6128 owner. New Amstrad CPC 464 and 6128 owner. Getting back the love!

TFM

Quote from: Trebmint on 19:49, 29 September 10

No as far as I know Symbos is dead until Jorn ressurrects it. The GUI is for the PC based application not the CPC side, and is designed to allow control for the user over the plugin. Effectively so you can add textbox, slider, dropdown, countbox etc which are all directly linked to z80 variable all via z80 assembler

Ok, very slowly (I'm 40!!! it takes it's time ;) I understand a bit of your big picture :-)
Now, I think your idea with the "plug ins" is really great. If I can contribute to the project I will do.

Do you plan to use a own small "OS", like some games do? Hmm, probably it's the best thing to start from Amsdos/Basic, throw out the Firmware (get some bytes) and to have a own minor DOS, just good to load needed files.  ... just thinking...
TFM of FutureSoft
Also visit the CPC and Plus users favorite OS: FutureOS - The Revolution on CPC6128 and 6128Plus

Trebmint

Quote from: TFM/FS on 21:06, 30 September 10

Ok, very slowly (I'm 40!!! it takes it's time ;) I understand a bit of your big picture :-)
Now, I think your idea with the "plug ins" is really great. If I can contribute to the project I will do.

Do you plan to use a own small "OS", like some games do? Hmm, probably it's the best thing to start from Amsdos/Basic, throw out the Firmware (get some bytes) and to have a own minor DOS, just good to load needed files.  ... just thinking...

Yes I hope this plugin idea is going to make things really easy once a few people start coding. The idea is that you never have to start a game from scratch, but just edit and modify as you go, and the game is always playable at every stage.

As for the firmware, yeah that will be dumped. I like the idea of cross platform, or atleast a version which will run on the cartridge so using firmware isn't an option. The creator version of the firmware will be based on plugins too, so that will cover the cross platform issue, though these are simple things like music players, key scanners, disk etc

TFM

There is one thing... that can't (at least not easy) be done with plug-ins. You need a kind of interrupt structure, to synchronise events with the Frame-Fly or f.e. with another interrupt. The more simple such a system is, the better it can be used. At least there should be options to call routines when INT0,1,2,3,4 and 5 are firing. So for example you can lock a scrolling plug in to INT0, a Color-switch plug-in to INT 1 and 3 and a music player to INT4 (there it doesn't disturb ;). ... just as an example...


Another thing... it would be great if ALL Z80 registers can be used. (I don't dare to ask for the Z80 interrupt mode 2, this really would lead to far.... maybe not on the Plus ;)
TFM of FutureSoft
Also visit the CPC and Plus users favorite OS: FutureOS - The Revolution on CPC6128 and 6128Plus

Trebmint

Quote from: TFM/FS on 05:03, 01 October 10
There is one thing... that can't (at least not easy) be done with plug-ins. You need a kind of interrupt structure, to synchronise events with the Frame-Fly or f.e. with another interrupt. The more simple such a system is, the better it can be used. At least there should be options to call routines when INT0,1,2,3,4 and 5 are firing. So for example you can lock a scrolling plug in to INT0, a Color-switch plug-in to INT 1 and 3 and a music player to INT4 (there it doesn't disturb ;) . ... just as an example...


Another thing... it would be great if ALL Z80 registers can be used. (I don't dare to ask for the Z80 interrupt mode 2, this really would lead to far.... maybe not on the Plus ;)

I've not really put much thought into interrupts yet, and probably the first release won't be that flexible other than allowing the core needed plugins to be included.

The idea is to run everything off an interrupt like a giant game loop that ticks every 50th and each of the core units will be programmable to set how often the are called. The core units will be

1. Screen updater - scrolling, sprites, background updates etc
2. Music / FX player
3. Key scanner
4. Animator
5. Gameplay core - controls all the active player/characters

Each of these units will have a time control and will automatically be activated, so you might set the Screen updater to happen 15 times a second, and the Animator 5 times a second. Obviously the music will be every 50th.

I guess there is no reason why other cores cant be tacked on at a later stage. Plus the z80 assembly will be freely available for you to tinker with. However the first releases will be more about just getting it working than allowing technically challenging development.

The good thing I think though is because it's assembled (and the source is clearly visible) when you build the project, inventive z80 coders such as yourself will be able to just alter the core routines and squeeze as much out of it as possible, and hopefully you'll let those routines go onto the server for others to use. The apps main point is to glue the all the pieces of code together

TFM

Sounds like you have a lot of work to do! My best wishes for the project! I'm really looking forward to see it growing  ;D
TFM of FutureSoft
Also visit the CPC and Plus users favorite OS: FutureOS - The Revolution on CPC6128 and 6128Plus

jbaudrand


Powered by SMFPacks Menu Editor Mod