Jump to content
IGNORED

REA CART done


RXB

Recommended Posts

It's just the interpreter, nothing more. There are patched GPL interpreters floating around that run from RAM.

 

Well then everyone should get a kick out of my next GPLHOW2 I am showing how to take a TI Basic program and turn it into GPL.

Link to comment
Share on other sites

REA@

 

This is a update to REA that has GRAM files that will load the REA module into GRAM 1,3,4,5,6 or 7.

 

I discovered I needed a REA that loads where TI Basic loads so I can disassemble the GPL of Modules in GRAM 3,4,5,6 or 7.

 

The GPLDISASS is also included in this ZIP.

REA@.zip

  • Like 1
Link to comment
Share on other sites

  • 4 years later...

RXB

 

Do you think you can give me a head start with a simple question I have. Imagine writing a small application that needs to span across 2 GROM chips and I would like to have my main code stored in GROM 1 and all my sprites, music and graphics is GROM 2.

 

Now as an example I will focus on having a small application that is executed from GROM space >6000 and that simply clears the screen and writes Hello by moving 5 bytes of data from GROM 2 to VDP.

The below is pseudo code and thus may contain GPL errors or misconceptions given that I still need to find the right way to do this. I am not sure how to compile a 2 GROM application, will it be one BIN file in the end or two ?

 

GROM 1 code

 

GROM >6000 Header stored in 6000-6030
AORG >30 Program starts at 6030
start ALL 32

Move 5, G@Hello, V>0000

....

Done EXIT

 

Grom 2

 

GROM >7000

Hello TEXT 'Hello'

 

END

Link to comment
Share on other sites

I am not sure how to compile a 2 GROM application, will it be one BIN file in the end or two ?

I think the most used format for GROM binaries is a single cartridge file with "*g.bin" extension.

 

To join multiple binaries assembled with ralphb's xga99, and fill the holes with 0's, I did a small command line utility in VB.NET: gromcart.zip.

  • Like 4
Link to comment
Share on other sites

  • 4 weeks later...

RXB

 

Do you think you can give me a head start with a simple question I have. Imagine writing a small application that needs to span across 2 GROM chips and I would like to have my main code stored in GROM 1 and all my sprites, music and graphics is GROM 2.

 

Now as an example I will focus on having a small application that is executed from GROM space >6000 and that simply clears the screen and writes Hello by moving 5 bytes of data from GROM 2 to VDP.

The below is pseudo code and thus may contain GPL errors or misconceptions given that I still need to find the right way to do this. I am not sure how to compile a 2 GROM application, will it be one BIN file in the end or two ?

 

GROM 1 code

 

GROM >6000 Header stored in 6000-6030

AORG >30 Program starts at 6030

start ALL 32

Move 5, G@Hello, V>0000

....

Done EXIT

 

Grom 2

 

GROM >7000

Hello TEXT 'Hello'

 

END

LOL this is so easy it is silly!

First off what kind of GPL assembler are you using as I have never seen GROM 2 commands ever.

GROM >6000 or GROM >8000 would be what I use.


          GROM >6000                 Header stored in 6000-6030
          AORG >30                   Program starts at 6030 (adds >30 to counter)
start     ALL 32
          MOVE 5,G@Hello,V@>0000
                ....
Done      EXIT
 
 
          AORG >1000                 (adds 1000 to counter >7000)
Hello     TEXT 'Hello'
 
          END

Have you seen my GPL HOW 2 video and examples?

http://atariage.com/forums/topic/153704-ti-994a-development-resources/

Look for GPL HOW 2 Series

  • Like 1
Link to comment
Share on other sites

LOL this is so easy it is silly!

First off what kind of GPL assembler are you using as I have never seen GROM 2 commands ever.

GROM >6000 or GROM >8000 would be what I use.


          GROM >6000                 Header stored in 6000-6030
          AORG >30                   Program starts at 6030 (adds >30 to counter)
start     ALL 32
          MOVE 5,G@Hello,V@>0000
                ....
Done      EXIT
 
 
          AORG >1000                 (adds 1000 to counter >7000)
Hello     TEXT 'Hello'
 
          END

Have you seen my GPL HOW 2 video and examples?

http://atariage.com/forums/topic/153704-ti-994a-development-resources/

Look for GPL HOW 2 Series

 

 

 

 

 

Thanks. I will try it out later. Tursi has kindly explained that if I am using pure GPL I should not worry about the physical GROM boundaries at all as it will be handled by the machine. One should simply make a huge blob of code and then when this is transferred to physical chips it will still work even if I am fetching data from an address not on the same chip.

Link to comment
Share on other sites

Tursi has kindly explained that if I am using pure GPL I should not worry about the physical GROM boundaries at all as it will be handled by the machine.

I vaguely remember this conversation but it would be ill advised to create production code that way... I may have answered from a different mindset. You should absolutely test anything built with that assumption.

 

Although the GPL interpreter will reload the address for every access and it should not matter technically, I would not personally write code that just makes that assumption because you can't always predict what it's going to run on. (For instance, I've wanted to rewrite the GPL interpreter for years. I would totally not reload the address every byte if I did, and GROM hardware wraps around the address at the end of a chip ;) ).

 

I would totally advise honoring the chip boundaries and jumping over them, just like existing software does, even IF it does work not to worry about it.

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