GCCを使ってぴゅう太でHELLO WORLDする その1

GCC for the TIを使います。

http://atariage.com/forums/topic/164295-gcc-for-the-ti/

まずbash on windowsを使う場合は、以下を実行する必要があります。

$ sudo su -
# apt-get update
# apt-get upgrade
# apt-get install build-essential
# apt-get install tree libgmp3-dev libmpfr-dev
# apt-get install unzip

以下をダウンロードしてUbuntuにインストールしました。

gcc-installer.tar.gz

$ mkdir /home/user01/tigcc
$ cd /home/user01/tigcc
$ tar zxvf gcc-installer.tar.gz
$ ./install.sh /home/user01/tigcc/

まずはTI-99/4Aのサンプルプログラムビルドしてみましょう。

elf2cart.tar.gz

hello.tar.gz

$ tar zxvf elf2cart.tar.gz
$ make
$ mv elf2cart /home/user01/tigcc/bin/
$ cd /home/user01
$ tar zxvf hello.tar.gz
$ cd hello
$ make
$ ls
crt0.asm  header.asm  hello.cart  main.c  main.s    run
crt0.o    header.o    hello.elf   main.o  Makefile

Makefileはこんな感じです。

$ cat Makefile
GAS=/home/user01/tigcc/bin/tms9900-as
LD=/home/user01/tigcc/bin/tms9900-ld
CC=/home/user01/tigcc/bin/tms9900-gcc

ELF2CART=/home/user01/tigcc/bin/elf2cart

LDFLAGS=\
  --section-start .text=6000 --section-start .data=2000

OBJECT_LIST=\
  header.o\
  crt0.o\
  main.o

PREREQUISITES=\
  $(OBJECT_LIST)

all: $(PREREQUISITES)
        $(LD) $(OBJECT_LIST) $(LDFLAGS) -o hello.elf
        $(ELF2CART) hello.elf hello.cart

.phony clean:
        rm *.o
        rm *.elf
        rm *.cart

%.o: %.asm
        $(GAS) $< -o $@

%.o: %.c
        $(CC) -c $< -O2 -o $@