Author Topic: HACC  (Read 20141 times)

0 Members and 1 Guest are viewing this topic.

Offline Halifax

  • LV9 Veteran (Next: 1337)
  • *********
  • Posts: 1334
  • Rating: +2/-1
    • View Profile
    • TI-Freakware
HACC
« on: January 20, 2007, 07:50:00 pm »
Well after polishing up my C++ skills I figured as a little side project I would work on this. I have already made a command-line interpreter that finds out what file to read from and what file to write to. I have also got a basic parser setup that finds all C functions in a given line I just need to setup how it compiles to assembly and dynamic memory allocation. Is there anything you guys would like to see in this?
There are 10 types of people in this world-- those that can read binary, and those that can't.

CureDesu

  • Guest
HACC
« Reply #1 on: January 21, 2007, 02:50:00 am »
If you do this, you will be my hero... Seriously, do it!  O_Oshocked2.gif

Offline trevmeister66

  • LV9 Veteran (Next: 1337)
  • *********
  • Posts: 1009
  • Rating: +14/-5
    • View Profile
HACC
« Reply #2 on: January 21, 2007, 03:20:00 am »
QUOTE
If you do this, you will be my hero... Seriously, do it!

:evil:evillaugh.gif:evil:evillaugh.gif:evil:evillaugh.gif

What he said.
Projects:    nameless RPG: 1.0%  |  Reverse Snake v1.5: 100%  |  Secret Project: 5%  |  DUNGEON: 70%

My MW2 Blog <-- Please visit :)

Liazon

  • Guest
HACC
« Reply #3 on: January 21, 2007, 03:42:00 am »
Definitely.  This realm still needs lots of work seeing as few to none of the existing C z80 compilers have displaced the need for ASM programmers.

Offline DJ Omnimaga

  • Clacualters are teh gr33t
  • CoT Emeritus
  • LV15 Omnimagician (Next: --)
  • *
  • Posts: 55941
  • Rating: +3154/-232
  • CodeWalrus founder & retired Omnimaga founder
    • View Profile
    • Dream of Omnimaga Music
HACC
« Reply #4 on: January 21, 2007, 05:07:00 am »
wow amazing, something like TIGCC (of course restricted to 83+ limitations) would rule the world of z80 calcs!

Offline Halifax

  • LV9 Veteran (Next: 1337)
  • *********
  • Posts: 1334
  • Rating: +2/-1
    • View Profile
    • TI-Freakware
HACC
« Reply #5 on: January 21, 2007, 09:01:00 am »
Yes thank you guys but I don't exactly know how TIGCC compiles and stuff but I will make this so that it compiles into Assembly code and then it will compile that code with TASM and Devpac83 so all you need to do is write the C code and compile.

NOTE: I don't know if I will be able to use typedef but also another note is that it will have inline assembly also so you can setup ASM routines to work with zC80. I am currently worknig on dynamic allocation with the 'int' function and once that is done making the rest should be easy riding :)smile.gif

I don't know if I will be able to include typedef and some other complicated C stuff like union and structure pointing :(sad.gif sorry
There are 10 types of people in this world-- those that can read binary, and those that can't.

Offline Spellshaper

  • LV10 31337 u53r (Next: 2000)
  • **********
  • Posts: 1690
  • Rating: +0/-0
  • This is me. Or maybe not.
    • View Profile
HACC
« Reply #6 on: January 21, 2007, 11:48:00 am »
That woud be neat-o.

Time to polish my C++ skills... I think I lost them over the years...

Liazon

  • Guest
HACC
« Reply #7 on: January 21, 2007, 01:41:00 pm »
TIGCC uses GCC as its base for compiling to 68k ASM and then creating binaries.

Most of the existing C compilers for z80 ASM will try to compile into an ASM file (not yet assembled) and then try to optimize the ASM code before creating working binaries.  This is a good idea because trying to use an 8-bit version of GCC (if one exists) probably wouldn't generate very optimized code.

At the very least, I think people would probably want to see basic if, else, while, for, switch/case, etc.  Things like malloc might not be worth the trouble since it's not very feasible on z80.  Most variable use in ASM is either static or for SMC use.  malloc is useable on 68k calcs because their AMS software already has a system to handle dynamic memory allocation.  the z80 calc OS do not afaik.

Offline Halifax

  • LV9 Veteran (Next: 1337)
  • *********
  • Posts: 1334
  • Rating: +2/-1
    • View Profile
    • TI-Freakware
HACC
« Reply #8 on: January 23, 2007, 11:44:00 am »
What I have learned:

This information comes straight from Kevin Kofler. You would only need to write a backend for the GCC compiler instead of a frontend. This is where z88dk failed by only trying to write a frontend for the GCC compiler. Also to compile the bins he has recommended using Binutils. I would want to use 'as' and then 'ld' or 'ld-tigcc'. Also I could port the libraries from TIGCC to z8-GCC with some work for the z80 calcs. Now I have a proposition.

Proposition:

I am looking for skilled C/C++ programmers that are willing to work on this porject with a group. TO keep this project clean, simple, and effcient there will be coding standards, a detailed dynamic list for bug reports and a todo list. This will help with interfacing with different programmers. Now I am only looking for a maximum of 9 programmers and a minimum of 3 programmers including me. If you want to tryout email me at [email protected].
There are 10 types of people in this world-- those that can read binary, and those that can't.

elfprince13

  • Guest
HACC
« Reply #9 on: January 23, 2007, 11:58:00 am »
you might want to talk to me on AIM at some point, I can help with this.

credentials:
    experience with 20 programming languages (including z80 asm and C)
    working knowledge of memory management, Context Free Grammars, and how compilers work.

Offline Halifax

  • LV9 Veteran (Next: 1337)
  • *********
  • Posts: 1334
  • Rating: +2/-1
    • View Profile
    • TI-Freakware
HACC
« Reply #10 on: January 23, 2007, 12:13:00 pm »
what is your AIM s/n im on there now
There are 10 types of people in this world-- those that can read binary, and those that can't.

Offline JincS

  • LV4 Regular (Next: 200)
  • ****
  • Posts: 191
  • Rating: +0/-0
    • View Profile
HACC
« Reply #11 on: January 23, 2007, 05:19:00 pm »
I might be able to help:

4 Years C/C++ experience
Intel x86 asm (no z80 asm)
HTML/HP/blady-blah...

Offline Halifax

  • LV9 Veteran (Next: 1337)
  • *********
  • Posts: 1334
  • Rating: +2/-1
    • View Profile
    • TI-Freakware
HACC
« Reply #12 on: January 24, 2007, 07:24:00 am »
JincS do you know how compilers work and about writing backends and binutils??
There are 10 types of people in this world-- those that can read binary, and those that can't.

Offline JincS

  • LV4 Regular (Next: 200)
  • ****
  • Posts: 191
  • Rating: +0/-0
    • View Profile
HACC
« Reply #13 on: January 24, 2007, 08:12:00 am »
Som e. I'm working on a compiler/interpreter for a scripting language I'm developing. But I'm working on learning more.

Offline bfr

  • LV8 Addict (Next: 1000)
  • ********
  • Posts: 819
  • Rating: +4/-0
    • View Profile
    • bfr's website
HACC
« Reply #14 on: January 24, 2007, 08:41:00 am »
Yes, you talked to Kevin Kofler like I suggested!  :)smile.gif

Also, remember my other suggestions at Psugen....

QUOTE

Use Flex for the lexer, Bison for the parser and GCC for the optimization and code generation. You don't have to "re-invent" the wheel. You should really talk to Kevin Kofler about this if you need any help; he's really good with this type of stuff (especially considering that he's the lead maintainer of TIGCC).

I'll be glad to help you.