參考資訊:
https://psx.arthus.net/starting.html
https://github.com/ABelliqueux/nolibgs_hello_worlds#installation
Makefile
TARGET = main CROSS = mipsel-linux-gnu- CFLAGS += -I/opt/nugget/psyq/include CFLAGS += -I/opt/psyq/include CFLAGS += -march=mips1 CFLAGS += -mabi=32 CFLAGS += -EL CFLAGS += -fno-builtin CFLAGS += -fno-pic CFLAGS += -mno-shared CFLAGS += -mno-abicalls CFLAGS += -mfp32 CFLAGS += -nostdlib LDFLAGS += /opt/nugget/common/crt0/crt0.o LDFLAGS += /opt/nugget/common/syscalls/printf.o LDFLAGS += -static LDFLAGS += -L/opt/psyq/lib LDFLAGS += -Wl,--start-group LDFLAGS += -lapi LDFLAGS += -lc LDFLAGS += -lc2 LDFLAGS += -lcard LDFLAGS += -lcomb LDFLAGS += -lds LDFLAGS += -letc LDFLAGS += -lgpu LDFLAGS += -lgs LDFLAGS += -lgte LDFLAGS += -lgun LDFLAGS += -lhmd LDFLAGS += -lmath LDFLAGS += -lmcrd LDFLAGS += -lmcx LDFLAGS += -lpad LDFLAGS += -lpress LDFLAGS += -lsio LDFLAGS += -lsnd LDFLAGS += -lspu LDFLAGS += -ltap LDFLAGS += -lcd LDFLAGS += -Wl,--end-group LDFLAGS += -Wl,--oformat=elf32-tradlittlemips LDFLAGS += -Tpsexe.ld all: $(CROSS)gcc $(CFLAGS) main.c -c -o $(TARGET).o $(CROSS)gcc $(CFLAGS) $(TARGET).o -o $(TARGET).elf $(LDFLAGS) $(CROSS)objcopy -O binary $(TARGET).elf $(TARGET).exe run: /opt/ps1/pcsx $(TARGET).exe clean: rm -rf $(TARGET).elf $(TARGET).exe $(TARGET).o