📄 makefile
字号:
SDCCFLAGS = --model-large --peep-file peephole.def#SDCCFLAGS = --model-large# Only for hacking on SDCC (creates lots of SDCC debug info)#SDCCFLAGS = --model-large --peep-file peephole.def --dumpall%.hex : %.asm as31 -l $<%.rel : %.c %.h peephole.def sdcc $(SDCCFLAGS) -c $<#./sloc_purge $*.asm > $*.tas#asx8051 -plosgff $*.tasall: mp3player.hex lcd.hex pm2_mp3.hex player.hex devmain.hex main.hex# there are four builds... mp3player.hex has everything and it is the# one that must be distributed to end users. The other three include# less stuff, which allows developers to have quick download times.# Developers only coding in C should download "main.hex" (after erasing# with 'X'). Developers also working on drivers should use "devmain.hex"# (after erasing with 'Y').# "mp3player.hex" is the full code to distribute to end usersmp3player.hex: drivers.hex p02_0609.hex isr.hex nodram.mcs mp3.mcs \test_dram.hex erase0.hex erase1.hex old.hex main.hex perl merge -0 isr.hex test_dram.hex erase0.hex \ old.hex -1 isr.hex drivers.hex p02_0609.hex nodram.mcs \ mp3.mcs erase1.hex -0 main.hex > mp3player.hex# "player.hex" is a complete download without 0.1.2 or extra stuffplayer.hex: drivers.hex p02_0609.hex isr.hex mp3.mcs erase0.hex \erase1.hex main.hex perl merge -0 isr.hex erase0.hex main.hex\ -1 isr.hex drivers.hex p02_0609.hex \ mp3.mcs erase1.hex -0 > player.hex# "devmain.hex" is all the code including drivers ('Y' to erase)devmain.hex: drivers.hex isr.hex main.hex perl merge -0 isr.hex main.hex \ -1 isr.hex drivers.hex -0 > devmain.hex# "main.hex" is just the portion built by SDCC ('X' to erase)main.hex: main.ihx main_hdr.hex packihx main.ihx > main.tmp perl merge -0 main.tmp main_hdr.hex > main.hexmain.ihx: main.c paulmon2.rel as31glue.rel startup.rel printf.rel \display.rel parse.rel malloc.rel playlist.rel stricmp.rel sta013.rel \malloc.rel dirlist.rel rand.rel id3.rel params.rel treedir.rel sdcc $(SDCCFLAGS) --code-loc 0x3040 --data-loc 0x40 \ --xram-loc 0x1000 --stack-after-data --idata-loc 0xFC \ main.c paulmon2.rel as31glue.rel startup.rel printf.rel \ display.rel parse.rel stricmp.rel sta013.rel malloc.rel \ playlist.rel dirlist.rel rand.rel id3.rel params.rel \ treedir.rel perl dseg_checkpaulmon2.rel: paulmon2.asx asx8051 -slop paulmon2.asxas31glue.rel: as31glue.asx asx8051 -slop as31glue.asxisr.asm: isr.asi drivers.asm perl asi2asm isr.asi > isr.asmp02_0609.hex: p02_0609.bin perl hexfmt p02_0609.bin > p02_0609.hexnodram.mcs mp3.mcs: mp3.mcs.master nodram.mcs.master cp mp3.mcs.master mp3.mcs cp nodram.mcs.master nodram.mcs @echo "It is normal for this next step to have an error." -get_mp3_mcs_fileslcd.asm: jw002.asm font0.txt font1.txt font2.txt font3.txt cp jw002.asm lcd.asm perl font2asm font0.txt >> lcd.asm perl font2asm font1.txt >> lcd.asm perl font2asm font2.txt >> lcd.asm perl font2asm font3.txt >> lcd.asmclean: rm -f *.hex *.lst *.bit bit2mcs *.mcs *.bit *.tas core rm -f *.cdb *.lnk *.ihx *.lst *.rel *.rst *.sym *.map *.fdl rm -f *.dumpgcse *.dumpdeadcode *.dumpdflow *.dumploop rm -f *.dumploopd *.dumploopg *.dumplrange *.dumppack rm -f *.dumprange *.dumprassgn *.dumpraw0 *.dumpraw1 rm -f main.tmp isr.asm main.asm printf.asm startup.asm rm -f lcd.asm display.asm parse.asm malloc.asm playlist.asm rm -f stricmp.asm sta013.asm malloc.asm playlist.asm main.mem rm -f dirlist.asm rand.asm id3.asm params.asm treedir.asm
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -