Gamma65C Worth It?

You need an actual VIC.

Moderator: Moderators

Post Reply

Do you think this is worth it?

Poll ended at Thu Dec 02, 2010 4:26 pm

Yes
2
29%
No
5
71%
Maybe
0
No votes
 
Total votes: 7

Harry Potter
Vic 20 Newbie
Posts: 10
Joined: Thu Dec 25, 2008 8:11 am

Gamma65C Worth It?

Post by Harry Potter »

I am working on a project called Gamma 65C to make up for the short-
comings of cc65 and include the following features:

* float suppport
* multiple memory banks and the usage of RAM behind ROM/IO
* usage of zp
* overlay support
* more and better optimizations
* improved __fastcall and register support and parameters passed in
memory
User avatar
Kweepa
Vic 20 Scientist
Posts: 1315
Joined: Fri Jan 04, 2008 5:11 pm
Location: Austin, Texas
Occupation: Game maker

Post by Kweepa »

Sounds cool!

I haven't had a lot of problems so far with cc65, but your features sound good!

I suppose my feature list would be quite specific:
int24 and uint24 types
a compile time option to use the 8x8 multiply lookup tables to speed up integer multiplies (adds a 2k lookup, hence the option!)
various float precisions
char table[char index] should compile to: ldx index lda table, x

I noticed when using the linker: if I have a memory section defined like this:

UDG: start = $1400, size = $200, define = yes, file = %O;
RAM: start = $1600, size = $2000, define = yes, file = %O;

Unless I fill up all $200 bytes of UDG, the linker just concatenates RAM onto UDG, so the basic SYS stub points to the wrong address. Not a big deal once you know what to look for though.
Harry Potter
Vic 20 Newbie
Posts: 10
Joined: Thu Dec 25, 2008 8:11 am

Post by Harry Potter »

Try using fill=yes.
User avatar
Kweepa
Vic 20 Scientist
Posts: 1315
Joined: Fri Jan 04, 2008 5:11 pm
Location: Austin, Texas
Occupation: Game maker

Post by Kweepa »

Ooh, thanks!
User avatar
Mike
Herr VC
Posts: 4841
Joined: Wed Dec 01, 2004 1:57 pm
Location: Munich, Germany
Occupation: electrical engineer

Re: Gamma65C Worth It?

Post by Mike »

Harry Potter wrote:* float support
Fine. That'd cure an noticeable (at least for me) inconvenience in cc65.
* multiple memory banks and the usage of RAM behind ROM/IO
I suppose that would be more targetted to C64. ;)

Generally, this thread here and the other one you just opened should go into the 'Emulation & Cross-developing' section. Could one of the mods please move these two threads?

Greetings,

Michael
Kananga
Vic 20 Afficionado
Posts: 317
Joined: Mon Mar 08, 2010 2:11 pm

Post by Kananga »

I just voted 'no', because I never use cc65 on the VIC-20, just ca65. An utterly subjective vote for sure ;-)

I may change my mind, if I get my hands on one of the 64K RAM expansions e.g. from Rossmülller/1985 that puts RAM bankable behind kernal ROM. It would enable interrupt routines without the ~50 cycles overhead used by the kernel ROM.

Or what did you mean by "multiple memory banks and the usage of RAM behind ROM/IO" on the VIC-20?
Buy the new Bug-Wizard, the first 100 bugs are free!
Harry Potter
Vic 20 Newbie
Posts: 10
Joined: Thu Dec 25, 2008 8:11 am

Post by Harry Potter »

Gamma 65C is planned to have the following optimizations that might be useful for the Vic20:

* longs and floats can be disabled, making functiions such as printf() take less room
* options to minimize or bypass stack usage
* less overhead: By default, Gamma 65C won't pass parameters, switch to lower-case or handle IRQ. This should save a couple hundred bytes.
* equation: use short-cuts to speed up calculations

I don't remember the rest. What do you think now?
User avatar
Mike
Herr VC
Posts: 4841
Joined: Wed Dec 01, 2004 1:57 pm
Location: Munich, Germany
Occupation: electrical engineer

Post by Mike »

Whatever you have in mind along these lines, these things are not implemented as some small patches to cc65. Adding float support for example requires some serious rework in the code generator, and optimizations like 'options to minimize or bypass stack usage' or 'short-cuts to speed up calculations' must be well thought out so existing source code doesn't break.
Harry Potter wrote:What do you think now?
If you already have a serious stock of implemented code, go ahead. Otherwise, if your project really is still in the planning phase, make yourselves clear you will put some hundreds of hours into it.
Post Reply