diff options
Diffstat (limited to 'assembler/Makefile')
| -rw-r--r-- | assembler/Makefile | 45 | 
1 files changed, 27 insertions, 18 deletions
| diff --git a/assembler/Makefile b/assembler/Makefile index 0225069..45988ba 100644 --- a/assembler/Makefile +++ b/assembler/Makefile @@ -1,29 +1,38 @@ -PICO = /dev/disk/by-label/RPI-RP2 +DEVICE = /dev/ttyUSB0 -assemble.uf2: assemble.elf -	../elf/elf2uf2 assemble.elf assemble.uf2 +.PHONY: build +build: assemble.he + +assemble.he: assemble.bin +	od -An -tx2 -v assemble.bin | sed "s/^ //" | tr " " "\n" | tr [:lower:] [:upper:] | sed "s/^/0x/" > assemble.he + +assemble.bin: assemble.elf +	arm-none-eabi-objcopy -O binary assemble.elf assemble.bin  objects = main.o uart.o assemble.o register.o octal.o opcode.o -assemble.elf: $(objects) -	arm-none-eabi-ld -T pico_ram_only.ld -o assemble.elf $(objects) ../setup/setup.so +assemble.elf: pico_bin.ld $(objects) +	arm-none-eabi-ld -T pico_bin.ld -o assemble.elf $(objects)  $(objects): %.o: %.s  	arm-none-eabi-as -o $@ $<  .PHONY: clean  clean: -	rm assemble.elf assemble.uf2 *.o - -.PHONY: flash -flash: $(PICO) assemble.uf2 -	cat assemble.uf2 > $(PICO) - -.PHONY: check -check: $(PICO) -	@echo Ready to flash - -$(PICO): -	@echo "RPI-RP2 bootloader drive not found" -	@echo Connect the pico with USB cable while holding bootsel button +	rm assemble.elf assemble.bin assemble.he *.o slowcat + +.PHONY: dump +dump: assemble.bin +	@od -Ax -tx2 -v assemble.bin + +.PHONY: serial +serial: $(DEVICE) assemble.he slowcat +	cat assemble.he | tr "\n" "\r" | ./slowcat | picocom -b 115200 -q $(DEVICE) +	@echo +	echo -n "G" | picocom -b 115200 -q $(DEVICE) +	@echo + +$(DEVICE): +	@echo Serial device not found +	@echo Connect USB cable from USB-UART bridge  	@false | 
