Jump to content

CyranoJ

Recommended Posts

187261651_Jag_Studiosmall.png.b29b5152fd7682e15fa806c2acf282cc.png

JagStudio is an advanced development suite for the Atari Jaguar that allows you to code using Assembler, BASIC or C and is based around Reboot's powerful RAPTOR API. Regardless of your programming capabilities, Beginners to Advanced coders can utilize this flexible package that will fully suit the needs of anyone looking to program exciting new games for the Jaguar. 

 

The benefits of using JagStudio are the Hardware Abstraction Layers (HALs) and the combination of external modules available to use. This allows you, the developer, to get on with writing your games while taking advantage of the Jaguar's powerful chipset without worrying about tedious, underlying mundane routines.

 

The same results that once took days or weeks to achieve can now be done in a matter of minutes, thanks to the power of JagStudio!

 

You are one click away from 64-bit creativity!

 

The current release of JagStudio along with any previous versions can be obtained at its homepage: https://jagstudio.reboot-games.com

 

Some of the features of JagStudio are:

 

  • Code in your language preference of Assembly, BASIC or C.  (Assembly and C are currently in Beta... help us make them better!)
  • Commands have been renamed (from rB+) to reflect the individual modules they control and prefixed as such: rapPrint, u235PlaySample, etc.
  • RAPTOR API Debug Function brings useful program variable visibility to the forefront, aiding ease of game development.
  • GameDrive support along with MRQ file creation.
  • ROM builder now adds FAST GPU depack by default for quicker startup times.
  • Ability to build and split ROMs up to 6MB into HI/LO for EPROM burning.
  • Updated both RAPTOR and U235 Sound Engine APIs to current versions, bringing additional benefits of both in a single updated package.
  • Added universal JagPad Input - A single call that works with either U235 or ZeroSquare sound engine so projects can be easily converted between the two should your needs change.
  • Many enhancements and bug fixes to the original rB+ code (eg, you can now include files >4mb, all files unpacked using GPU by default)
  • All documentation and examples have been updated with a simple rB+ to JagStudio conversion guide to bring your old projects over to the fully updated JagStudio.
  • Includes project examples for all supported languages (Assembly, BASIC and C) for anyone looking to get started quickly.
  • We plan on keeping this alive and active, with ongoing improvements and new features and look forward to seeing what you all make with it.

 

If you have any questions, please feel free to ask in this newly created sub-forum.

 

Happy coding, everyone!
 

The JagStudio Team.

@CyranoJ  @Sporadic  @Clint Thompson   

 

A huge "Thank-You" to ggn for creating rB+ upon which all this is based. Please do not pester him with support requests for JagStudio.

 

 

JagStudio 1.1 has been released!

 

We are now feature complete with Raptor 2.0.20.

 

If you already have JagStudio installed, then to upgrade;
- Backup your existing JagStudio folder.
- Extract the new zip.
- Copy the new JagStudio folder over the top of your existing one.  (Obviously this will undo any changes you might have made to the example projects, but you can always copy those from your bakup).

 

Head on over to https://jagstudio.reboot-games.com for the download, online docs and details.

 

1.1 Change log;
* Added        Angle calculation and direction vector.  See example BASIC project 'calcangle'
* Added        Collision List.  See example BASIC project "collisionlist".
* Added        Z-Sorting for Sprites based on a sprite property.  See example BASIC project "zsort".
* Added        New "fader" BASIC project. Example on how to do CLUT fades.
* Added        Clock functions.  See new clocktest project (BASIC).
* Added        Raptor Sprite Shift.  Eg. rapSpriteShift(xshift, yshift, sprBug1, 3) - See project "spriteshift" (BASIC).
* Added        Dynamic object scale - See project "shootbang" (BASIC).
* Added        Simplified version of zeroPlaySample.
                      Now you just pass the start and end addresses - the length and rounding are worked out for you.
                      Eg.  zeroPlay(channel,start_address, end_address, frequency, params).                
* Added        Simple way to stop sound on a channel when using Zero player.
                      Rather than the old way of calling zeroPlaySample with 0's.
                      Eg.  zeroClearChannel(channel)    
* Updated    All documentation with some further clarity and the new functions.
* Fixed        BCX Print generating a \n
* Fixed        Fix build.bat so it creates a <projectname>.s in the build folder for C projects.
* Fixed        Fix build.bat so it can send ABS files to the JagGD.
* Fixed        Fix comment in object template for scale max to 228.
* Fixed        xdivs, xdivu, xmuls, xmulu where sometimes they would use an address register and fail compilation.

 

Have fun and happy coding!

 

  • Like 37
  • Thanks 12
Link to comment
Share on other sites

Great work! This is going to boost the homebrew community!

 

Thanks for adding C, Basic is fun but well, I'm getting to old to go back to basic :)

 

I've noticed a small issue, the first time I compile a project, virtual jaguar starts with a black screen. Then if I kill VJ and rebuild the project it works. I'm suspecting that VJ starts before the ROM is actually copied at the expected location, but I'll check that later today. By the way are you open to contribution?

  • Like 5
Link to comment
Share on other sites

12 minutes ago, SlidellMan said:

Does it include Pro Controller support for those who wanted to develop with it in mind?

The Pro controller extra buttons just map to standard Jag pad buttons. So it works by default. Eg. The shoulder buttons map to number pad 4 and 6 iirc.

  • Thanks 1
Link to comment
Share on other sites

2 minutes ago, LordKraken said:

Great work! This is going to boost the homebrew community!

 

Thanks for adding C, Basic is fun but well, I'm getting to old to go back to basic :)

 

I've noticed a small issue, the first time I compile a project, virtual jaguar starts with a black screen. Then if I kill VJ and rebuild the project it works. I'm suspecting that VJ starts before the ROM is actually copied at the expected location, but I'll check that later today. By the way are you open to contribution?

Did you just test with one of the example projects to see that issue? Any in particular? 

Link to comment
Share on other sites

21 minutes ago, SlidellMan said:

So far, I tried building it with an added "Built With Jag Studio", but keep getting this error:

zero_audio.s 3: Warning: CLR.L opcode ignored...

build/ramassets.inc 6: Error: cannot open: "build/Built_With_Jag_Studio_160_Trans.png.gfxdata"

Build error!

This has highlighted a gap in the docs :)

 

You need the graphics file to be a .BMP image, PNG won't work.

 

I have attached a converted one for you.  I just opened in Paintshop Pro 7 and saved as BMP.

 

If you convert it to a bmp and then use something like this in your assets.txt then it should build;

 

ABS,SPR_NAME,gfx_clut16,ASSETS\GFX\Built_With_Jag_Studio_160_Black.bmp

 

Built_With_Jag_Studio_160_Black.bmp

  • Like 1
  • Thanks 1
Link to comment
Share on other sites

1 hour ago, LordKraken said:

Great work! This is going to boost the homebrew community!

 

Thanks for adding C, Basic is fun but well, I'm getting to old to go back to basic :)

 

I've noticed a small issue, the first time I compile a project, virtual jaguar starts with a black screen. Then if I kill VJ and rebuild the project it works. I'm suspecting that VJ starts before the ROM is actually copied at the expected location, but I'll check that later today. By the way are you open to contribution?

Well, this happens to me all the time on the first VJ call, (not with JagStudio and the binary is already in place). I think it's more a VJ issue than a JagStudio issue.

Link to comment
Share on other sites

RELEASE THE BALLOONS!!!

E4DE3934-D3F5-444E-8FCB-74CFB7808837.gif.d637465e8a19a299e3031f8a7eac5c5f.gif

 

I’ve been preparing a few video tutorials for this that I’ll be uploading soon to help the absolute beginner, hopefully to help further clarify on setting up for getting off the ground and going.

 

The QuickStart guide and included examples are a good place as any to poke around and have all the necessary information to do mostly everything you need.

 

If anyone has any questions, please freely ask in the forums or if you’re not comfortable asking publicly, I’m more than happy to assist in any way I can and am only a private message away.

  • Like 11
  • Thanks 5
Link to comment
Share on other sites

4 hours ago, LordKraken said:

I've noticed a small issue, the first time I compile a project, virtual jaguar starts with a black screen. Then if I kill VJ and rebuild the project it works.

This might be the BIOS setting. Please make sure it is configured as below in settings:

 

image.png.30bf4441cf437f27d255daf1fc9adc81.png

  • Like 1
Link to comment
Share on other sites

45 minutes ago, Sauron said:

Very nice that this supports both Basic and C! Now only if you could add in support for FORTRAN and COBOL.... :cool:

You joke, but the way we've built this if we can find an extendable compiler it might be possible.  I'm partial to a bit of Pascal, myself.

 

However, I suspect that Assembler, BASIC and C cover 99.999999% of everyone. Warp 10 is impossible :)

  • Like 5
  • Haha 2
Link to comment
Share on other sites

On 2/5/2021 at 5:32 PM, CyranoJ said:

You joke, but the way we've built this if we can find an extendable compiler it might be possible.  I'm partial to a bit of Pascal, myself.

 

However, I suspect that Assembler, BASIC and C cover 99.999999% of everyone. Warp 10 is impossible :)

Assembler, Basic and C does sound perfect.  However, if Lua or Python showed up, that'd be something.

 

I'm probably not going to have time for Jag, but wow, saw this on the home page, what a cool thing....

Link to comment
Share on other sites

One of us BASIC or C users could probably write ourselves a LUA interpreter and include it in our projects.  Store the tokenized LUA code in eeprom / save memory.

 

Thought of something similar for Atari 2600 projects using a SaveKey (or Genesis with battery backed RAM).

 

Why cause real programmers headaches with GOTO usage when you can make unreadable self modifying code as well?

  • Like 1
  • Haha 2
Link to comment
Share on other sites

1 minute ago, jefffulton said:

@Albert I'm going to need a game me Drive for this. When do you think they will be available?

I'll continue to receive waves of Jaguar GameDrives as we work through the long waiting list.  Not sure how long it will take to churn through the list.  Should have the next batch within a month.

 

 ..Al

  • Like 1
Link to comment
Share on other sites

4 minutes ago, Lavalamp said:

Would be nice to have Visual Studio Code integration like the awesome  Atari Dev Studio for 7800 Basic.

I’m not sure what the differences or benefits are but that seems unlikely. The BASIC portion of JagStudio is highly effective and quite easy in the grand scheme of things. Highly recommend you take a peek.
 

1 minute ago, SlidellMan said:

One feature I do look forward to: Jaguar CD support.


You can create a 2MB program that will load from JagCD using Jiffi. Outside of that and memory track module support, I believe that’s all you’re going to see now that the focus is shifting to SD. It doesn’t make sense to support a mostly dead format where a superior option exists tbh. 

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...