Jump to content
IGNORED

Modern Jaguar IDE or makefile


Songbird

Recommended Posts

Historically, I've done Jaguar code using very basic tools: UltraEdit or even NotePad for source code editing, and DOS command line invocations for the assembler and linker. If I wanted to get fancy, I'd even put all the command lines into a batch file. ;)

 

For my next project, I'd like to use something more modern. Does anyone have suggestions on an IDE for Windows 7 (or up) where I can point the build rules to rmac and rln? Bonus points if the IDE is integrated with SVN or Git. :D

 

Alternatively, is anyone using GNU make or equivalent so it's still a one-line invocation to kick off a build? If so, can you point me to an example makefile please?

 

Thanks in advance!

 

Link to comment
Share on other sites

Hello,

 

Some amiga people have released some franken-setups that plug into visual studio 2013 (http://www.pouet.net/prod.php?which=65625) - perhaps if you take some time and change the assembler to rmac you might get it to work for the jaguar too?

 

Otherwise, you might want to take a look at something like rb+ - I have a .bat file there that starts converting the .bas file into c and then compiling it, then linking it up with raptor and whatever else needed. I also have some example scripts for notepad++ where you can set it up to edit your code, hit a button (say f7) and it'll call the build batch file, and pipe the output of the commands into a window inside notepad++ so you can see the errors without opening a console at all. With some extra customising you can probably make it highlight the errors in the console and make them double-clickable so you can jump to the error line directly. It's not a makefile but honestly if you're just assembling 10-20 .s files it'll take just a few seconds to assemble and link everything up, so I think it should be ok for most uses.

 

Hope this helps.

  • Like 2
Link to comment
Share on other sites

Thanks for the quick replies! It will be nice not to use DOSBOX any more. :) And I definitely want to check out rb+ at some point -- even though I've done a ton of 68K coding at this point, I could envision getting a new game to prototype quicker using a full-featured set up like that.

Link to comment
Share on other sites

Thanks for the quick replies! It will be nice not to use DOSBOX any more. :) And I definitely want to check out rb+ at some point -- even though I've done a ton of 68K coding at this point, I could envision getting a new game to prototype quicker using a full-featured set up like that.

The only reason I mentioned rb+ is that it contains a lot of components integrated together: there's a graphic converter (just feed it BMPs and it'll give you jaguar raw files regardless of bit depth), an audio converter (give it just about every sound format out there and it'll be converted to raw pcm of any replay frequency or even μlaw for zerosquare's open source player), a ROM builder (it even packs the main binary so you can cram more in the ROM), a packer/unpacker (from UPX sources which means high compression ratios), an asset importer (give it a list of files you want in your project and it'll import them into a big file and give you pointers, either in RAM or ROM), a basic-to-c converter, a c compiler, raptor itself of course, and an assembler and linker for anything else.

 

Now, the thing is that you can more or less take any of the above component and use it independently. It's all given with source code (except raptor and u-235 sound engine which are given as-is on object files) so you can tweak it if you wish. build.bat is just a small spaghetti batch file that does everything that needs to be done in sequence to avoid having people do those things by hand.

 

So, the whole package tries to be as streamlined and hassle-free for everyday use. I think it's the most advanced jaguar system released so far! (If I'm forgetting something please remind me :)) And like I said you're free to use anything you want!

  • Like 5
Link to comment
Share on other sites

If you're looking for an old-fashioned makefile, this is what I use:

# Targets

TARGET = game64

#====================================================================
#       Macro & Assembler flags
#====================================================================

# ROM based values
STADDR = 802000
BSSADDR = 4000
# RAM based values
#STADDR = 4000
#BSSADDR = x
MACFLAGS = -fb -g
ALNFLAGS = -rq -w -n -a $(STADDR) x $(BSSADDR)
#ALNFLAGS = -rq -w -a $(STADDR) x $(BSSADDR)

#====================================================================
#       Default Rules
#====================================================================

.SUFFIXES: .o .s

.s.o:
        ../rmac/rmac $(MACFLAGS) $<

#====================================================================
#       EXECUTABLES
#====================================================================

# NB: Link order is important if you don't specify run address in the linker...
OBJ = $(TARGET).o initvid.o

$(TARGET).cof: $(OBJ)
        ../rln/rln $(ALNFLAGS) -o $(TARGET).cof $(OBJ)
#       cp $(TARGET).cof ../../software/
        @-rm -rf $(TARGET).rom
        @-rm -rf $(TARGET).cof-padded
        @-rm -rf $(TARGET).U1
        @-rm -rf $(TARGET).j64
        ../../tools/padcart -a $(TARGET).cof
        @mv -v $(TARGET).cof-padded $(TARGET).rom
        ../../tools/jagenc/jagcrypt -u $(TARGET).rom
        @-rm -rf $(TARGET).XXX
        @mv -v $(TARGET).U1 $(TARGET).j64

$(TARGET).o:  $(TARGET).s enemy-positions.s

clean:
        @-rm -rf $(OBJ)
        @-rm -rf $(TARGET).cof
        @echo "Target clean."

Of course you would change the paths to various executables to suit your setup. :)

Link to comment
Share on other sites

If you're looking for an old-fashioned makefile, this is what I use:


        ../rmac/rmac $(MACFLAGS) $<

[..]

        ../../tools/padcart -a $(TARGET).cof

[..]

        ../../tools/jagenc/jagcrypt -u $(TARGET).rom

 

What? Relative paths? No definitions like $RMAC or $PADCART? What a bad makefile ;).

  • Like 1
Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...