| |
Kaizen
Registered: May 2009 Posts: 24 |
64TASS makefile on Mac OS X
Hello,
currently I use for my crossdev works 64TASS and Exomizer 2 on a Mac OS X machine.
I'm trying to create a makefile in order to perform certain operations in sequence, but unfortunately I haven't familiarity with this kind of stuff so I cannot create a working one.
The operations are, for example:
64tass infile.s -o outfile.prg
exomizer sfx 2064 outfile.prg -n -o outfilexo.prg
I would like to run the makefile from Terminal to perform that.
Any suggestion?
THX. ;-) |
|
| |
JackAsser
Registered: Jun 2002 Posts: 2014 |
outfile.prg: infile.s
64tass $? -o $@
outfilexo.prg: outfile.prg
exomizer sfx 2064 $? -n -o $@
But you should read up on implicit rules so that all .s files are automatically converted to .o for example.
Also remeber that u need to indent with a proper tab-character, not just spaces. |
| |
Kaizen
Registered: May 2009 Posts: 24 |
Thank you JackAsser!
I've make some attempts starting by your way and finally I've found the working syntax:
outfile.prg: infile.s
[tab]64tass $? -o $@
[tab]exomizer sfx 2064 outfile.prg -n -o outfilexo.prg
I've got my Christmas gift! ;-)
THX. |
| |
The Overkiller Account closed
Registered: Mar 2002 Posts: 342 |
@Kaizen: damn Mac chauvinist :D |
| |
Kaizen
Registered: May 2009 Posts: 24 |
@The Overkiller: as you can see, with Macs you can make very good works... more or less than with a peecee, but with much more style!!! :-p |
| |
BHF Account closed
Registered: Jan 2003 Posts: 30 |
And, run Linux, Windows along with the superb OSX on a wonderful shiny machine :D |
| |
Kaizen
Registered: May 2009 Posts: 24 |
Hello, I am successfully using the makefile in the realization of my work, but there is still something that I can't do.
Usually I work in a root folder containing several subfolders, files and, importantly, the makefile.
When I work I create an hidden folder called "work"in which I'd like to run all the work, but the problem is that I can't make the makefile located in the root folder execute the commands in the sub folder "work".
Example: I create the subfolder "work" , I copy a source asm "prg.s" from the "src" subfolder to "work" subfolder but then I can't run the command "64tass prg.s -o prg.prg" in the makefile so that the source get compiled within the "work" subfolder because the makefile works at root folder level.
I tried several ways but still I can't it.
Everyone have a suggestion?
Thx. :-) |
| |
Mr. SID
Registered: Jan 2003 Posts: 424 |
Why don't you just to this?
64tass src/prg.s -o work/prg.prg
No need to copy anything around. |
| |
Kaizen
Registered: May 2009 Posts: 24 |
Well... I adopted the procedure to copy all files (asm source, binary and sub-makefile) in the folder "work" beacuse sometimes my assembled files include both code (placed in src subfolder) and segments of binary files (placed in files subfolder).
Do you think there is also a way to include the binary inside the asm source even if they are placed in different folders?
That way youve suggested above is too useful for me... if I can solve this last question I will get the right way for me. :-)
Thanks for suggestions!!! |
| |
iAN CooG
Registered: May 2002 Posts: 3194 |
I don't know what your problem is, just specify the relative path to the files. |
| |
Kaizen
Registered: May 2009 Posts: 24 |
Thank you! ;-) |
| |
Kaizen
Registered: May 2009 Posts: 24 |
I tried this ...
the makefile is located in the main dir and contains the commands:
# ------------------
[TAB]mkdir -p work
# ------------------
[TAB]64tass code/"TEST.s" -o work/"TEST.PRG
# ------------------
The program TEST.s contains the directive:
[TAB].BINARY "001 B.PRG", $0002, $1000
If the file "001 B.PRG" is contained inside the main dir, all is working perfectly.
But instead if I put it in the subdir src and modify the source code TEST.s like this...
[TAB].BINARY src/"001 B.PRG", $0002, $0100
... I get: Cant locate file "001 B.PRG"
I tried also other similar paths, but with no success... maybe 64tass doesn't allow path commands?
I didn't find any info in the manual about that. |
| |
Mr. SID
Registered: Jan 2003 Posts: 424 |
Put the path inside the quotation marks:
64tass "src/TEST.s" -o "work/TEST.PRG"
and try both of these variants, one of them might work:
.BINARY "src/001 B.PRG", $0002, $0100
.BINARY "../src/001 B.PRG", $0002, $0100
|
| |
Kaizen
Registered: May 2009 Posts: 24 |
Thanks Mr. SID,
using
.BINARY "src/001 B.PRG", $0002, $0100
into the 64tass sourcefile and keeping
64tass code/"TEST.s" -o work/"TEST.PRG
into the makefile it just work well. ;-) |