Welcome, Guest. Please login or register.
July 22, 2019, 09:16:53 pm
Home Help Login Register
News: New Game Released - Beebris

+  Free Jaguar Project
|-+  Atari Jaguar Discussions
| |-+  Jaguar Development
| | |-+  Jetpac Source Code
« previous next »
Pages: [1] Print
Author Topic: Jetpac Source Code  (Read 7815 times)
Cyrano Jones
Newbie
*
Posts: 37


« on: August 07, 2009, 06:16:54 am »

Hi folks,

This is already available via our D-Bug website, but I thought I'd add it here for completeness in case someone missed it.

Here's the complete source code and all assets required to assemble the quite mediocre version of "Jetpac" I wrote for the Jaguar.

Enjoy!
Logged
remowilliams
Tech Group
Jr. Member
*
Posts: 74



« Reply #1 on: August 07, 2009, 06:40:12 am »

Very cool.  Now if we could just coax you into some other jag stuff.   Grin
Logged

"Indeed. But I think you misunderstand. I am not here to keep the darkness out. I'm here to keep it in. Call me . . . the Guarding Dark. Imagine how strong I must be." -Sam Vimes (Thud!, Terry Pratchett)
Cyrano Jones
Newbie
*
Posts: 37


« Reply #2 on: August 07, 2009, 09:07:26 am »

I would seriously consider it if I had a skunkboard or other developer device *and* also if the short view into the community I've been exposed to since releasing Jetpac a few months ago didn't fill me with utter distaste at a few people hell bent on ruining everyone else's fun.

The Jaguar "scene" doesn't have much "Atari Spirit" in it - at least not compared to the 2600, 8Bit, ST worlds.

Let's all hope this site will help to change things for the better. Here's to FJP's future!
Logged
Hellcat
Guest
« Reply #3 on: August 07, 2009, 10:49:19 am »

Thank You and second remowilliams.
Logged
doctorclu
Full Member
***
Posts: 187



« Reply #4 on: August 07, 2009, 11:22:12 pm »

Wow that is some tiny code!  Smiley

So how long did it take you to make this game again?  Was this basically the game or did you imagine any other refinements to it you wanted to do?
Logged
SpiderJerusalem
Tech Group
Full Member
*
Posts: 107



« Reply #5 on: August 07, 2009, 11:28:16 pm »

Wow that is some tiny code!  Smiley

So how long did it take you to make this game again?  Was this basically the game or did you imagine any other refinements to it you wanted to do?


From the readme of the release, 2 days, including learning the Jag hardware from scratch Smiley
Logged

You people don't know what the truth is! It's there, just under their bullshit, but you never look! That's what I hate most about this fucking city -- lies are news and the truth is obsolete!
doctorclu
Full Member
***
Posts: 187



« Reply #6 on: August 07, 2009, 11:48:14 pm »

Ok Cyrano.. love the name btw being a fan of the play.. what did you do to learn this from scratch?
Logged
Cyrano Jones
Newbie
*
Posts: 37


« Reply #7 on: August 08, 2009, 01:28:48 am »

Play? Cyrano Jones is a Tribble salesman!

Anyway, with the core CPU being 68000 there wasnt much to learn, other than the Object Processor and a quick reference manual for the hardware registers. Pretty straightforward really!

The JRISC instruction set is pretty much a subset of the 68000 instructions - anyone who is familiar with MC68k will be all over the GPU/DSP in minutes, they are so close. I guess you hear all the horror stories of how hard it is to code on from people who learned to code from Structured Programming Books in the 80's - and not from watching demos and thinking "Hell, thats COOL!" Smiley

The "game" (I use the term in the most extreme use of the word!) was coded in around 2 days or so.  It's nothing much, but the framework can be used for many other projects - I hope you enjoyed it!
Logged
doctorclu
Full Member
***
Posts: 187



« Reply #8 on: August 08, 2009, 04:00:47 am »

Actually I did.  Reminded me of some of the games I used to download on my Atari 800 as a teenager.  Smiley

So here is what I'm wondering.  The 68K processor, you can program for that, and that does all the calculations.  Would programming the 68K alone allow you to display something on the monitor?

I've often wondered if I wanted to display text, like a text adventure, would I have to set up a text character set, or does the 68K already have one as a default in the processor?

If there is not a font set in the 68K, how about a font set in the other chips?

Yes yes, I'm still thinking programming in the Atari 800 sense I guess.
Logged
Cyrano Jones
Newbie
*
Posts: 37


« Reply #9 on: August 08, 2009, 05:10:49 am »

Jetpac is completely in 68000 (apart from the DSP music player) so yes it is entirely possible.

Using the GPU could *possibly* speed things up considerably (It will, in most cases if you produce streamlined code) - but there are certain things it is very bad at, and the 68000 will kick it's arse doing (BCD arithmetic is one example)

The CPU (68000) has no RAM or ROM, so there cannot be any character set it it. You have to load your own bitmap into RAM or ROM and have your own text display routine - there is one in Jetpac for your use if you so desire, although the font is a bit crap Smiley
Logged
jmetal88
Newbie
*
Posts: 12


« Reply #10 on: August 08, 2009, 06:57:19 am »

It's interesting reading the comments in the source code, as I've never really done anything in assembler before.  Smiley

If it's not too much trouble, could you maybe post a walk-through of some of the simple stuff needed to make a game work?

I've always been pretty curious, and I've tried to get through some of the lessons Gorf posted on JSII, but all I've really gotten from those is how to compile them, I don't really understand which block of code leads to which effect in the program.
Logged
Cyrano Jones
Newbie
*
Posts: 37


« Reply #11 on: August 08, 2009, 11:58:16 am »

If it's not too much trouble, could you maybe post a walk-through of some of the simple stuff needed to make a game work?

I've always been pretty curious, and I've tried to get through some of the lessons Gorf posted on JSII, but all I've really gotten from those is how to compile them, I don't really understand which block of code leads to which effect in the program.

Sure, where would you like me to start? It's been a long time since I've done Jaguar stuff tho so I might be rusty!

Gorf probably isn't the best person to learn how to code from, most of his routines are NOPs Smiley 
Logged
doctorclu
Full Member
***
Posts: 187



« Reply #12 on: August 08, 2009, 02:07:24 pm »

What is a NOP?   I know he likes to steer clear of the 68K processor, and can't blame him since the true power of the Jaguar is in the other chips.  However, knowing how to program the 68K processor is a good start at least.

So yes I need a walk through.
Logged
ggn
Newbie
*
Posts: 39



« Reply #13 on: August 08, 2009, 02:32:03 pm »

What is a NOP?

NOP = No OPeration. There you go, you now know one of the most important MC68000 instructions (depending on where you stand Tongue)
Logged
jmetal88
Newbie
*
Posts: 12


« Reply #14 on: August 08, 2009, 07:19:25 pm »

If it's not too much trouble, could you maybe post a walk-through of some of the simple stuff needed to make a game work?

I've always been pretty curious, and I've tried to get through some of the lessons Gorf posted on JSII, but all I've really gotten from those is how to compile them, I don't really understand which block of code leads to which effect in the program.

Sure, where would you like me to start? It's been a long time since I've done Jaguar stuff tho so I might be rusty!

Gorf probably isn't the best person to learn how to code from, most of his routines are NOPs Smiley 

Well, since I've managed to do this in C with the Removers' library already, how about an assembly routine to display an image or a sprite?  I'd really like to see assembly source code for a Jaguar program that does only that, with comments by each operation as well as a comment for each section or block of code explaining what the section as a whole accomplishes.  I hope that isn't too much to ask for, but I probably wouldn't understand how to make anything for myself on the Jaguar otherwise.
Logged
Pages: [1] Print 
« previous next »
Jump to:  


Login with username, password and session length

Powered by MySQL Powered by PHP Powered by SMF 1.1.10 | SMF © 2006-2009, Simple Machines LLC Valid XHTML 1.0! Valid CSS!