Jump to content
Jagware

rush6432

Members
  • Content count

    36
  • Joined

  • Last visited

Community Reputation

0 Neutral

About rush6432

Contact Methods

  • ICQ
    0
  1. ARJ Compression for 68k

    After one attempt here at integrating this tool into an existing program ive had no good results. Unsure why, but it seems that it crashes even when setting up the stack 12k away from the end of ram and calling it as the directions say while including the .s file. I havnt used mode 4, just the mode 7 example. Am i missing something?? Could always benefit from a little better compression allows for more stuff in programs.
  2. Sinewaves

    Usually it's not very practical to store the object's position using polar coordinates AKA rho,theta (ρ,θ) or at a stretch of the definition, sine waves. What is rather useful though is to use polar coordinates for expressing the movement vector or speed for X and Y axes in layman's terms. Let's assume that you have an object at (100,200) and you want it to move with a speed of 5 pixels/frame 30 degrees north-east. The pair (5 pix/frame,30°) is exactly a representation of the movement vector in polar coordinates. If we were to add this every frame to the coordinates of the object (which are expressed in the Cartesian system), we'd get the desired motion. Since our object's position is expressed in Cartesian coordinates and we can't change the way the hardware stores coordinates, it follows that we have to convert the movement vector to the Cartesian system as well. We can do this relatively easy using the 2 following formulas: Δx = r * cos(θ) = 5 * cos(30°) Δy = r * sin(θ) = 5 * sin(30°) If we were to add this pair of equations to our coordinates we'd get the coordinates of the object for the new frame, thus: new_x= Δx + 100 = 5 * cos(30°) + 100 new_y= Δy + 100 = 5 * sin(30°) + 200 One final thing to notice is that actual Cartesian coordinates have the x axis pointing right and the y pointing up, but screen coordinates have the y axis pointing down (the pair of coordinates (0,0) is at the top left corner instead of the bottom left because of this), so if we were to add the above, the object would head to the bottom right instead of top right. So we have to adjust the 2nd equation like so: new_y= -5 * sin(30°) + 200 And all will be well. Apologies if that wasn't what you asked for and it's common knowledge for you, but this is what I understood you were asking in the first sentence of your question. Of course, if this is what you asked for and something's not clear in my answer, feel free to ask further . No that sums it up. i somewhat knew this already but was more inquiring about the process of creating the tables themselves so that i could write a routine to call to read the tables for x/y positions and have an object follow a pattern per say.
  3. Sinewaves

    ahh thats right...... i totally forgot about that... Thanks for the replies. ill have to mess around with it a bit and see what i come up with.
  4. Sinewaves

    Just curious if someone can give me the break down on using sinewaves for object position. Mainly what im curious about is how to go about generating the sinewave table that code can be written to pull information from. (x and y axis). Is there such a tool that makes it easy to create a pattern or wave and then output the coordinates easily?
  5. BLACKOUT! Released now

    i thought raiden had issues with pal as well?!?
  6. BLACKOUT! Released now

    Yeah, cost of alpines + eprom burner and parts is just downright expensive... As for the pal/ntsc issue, yes its more due to the fact that i developed on an ntsc console and didnt really bother until about 75-80 percent or more through to look into pal (Stupid on my part) Unfortunately at that point ive hard coded alot of screen positions for sprites and while i COULD fix this, i feel since a first run is out already it would be unfair to fix it for the next run and leave the original 23 buyers with a semi crippled version. We plan on doing some more carts and some CDs here soon hopefully. Binary should be out after these so everyone can play it. As for fixing though, sh3 you're right. im drawing a line under it and calling it done. we have advanced on to other jag projects that are sharper and more advanced/improved. Honestly i dont see us trying to charge anymore than the $80usd + shipping for a hard copy full cartridge release. I can say thats the most expensive it will probably get.. Hell madbodies charged 80 and used a dvd/vhs style case with foam.... no manual...
  7. Tranparency and RMW bit

    I actually ended up using the -gray flag on tga2cry after converting to greyscale and all seems to be working great! thanks for all the info and tips!!
  8. Tranparency and RMW bit

    Thanks guys for the information. very informative. Ill have to tinker with it when i get some more free time. The jag dev manual mentions a mixed mode rgb/cry video mode?? $6C7 when pushed into VMODE seems to be 16bit rgb 320x240ish and $4C7 seems to be cry cry 16bit 320x240 is there a mixed mode like the manual states where you can have cry objects and rgb objects in the same list and display properly or is it just one or the other? I havent looked at the manual in some time so i may have to sometime soon, but figured someone might know off hand.
  9. Tranparency and RMW bit

    Best tools to use??? tga2cry with -glass flag? bmp2cry tool that was listed here? any suggested specific tools to use for cry or ones to stay away from?
  10. Tranparency and RMW bit

    I havn't found many examples and or much documentation on this topic. I have searched and found a thread or two here but it ends up partially in french through the thread. Seems i missed the boat on this topic completely... Anyhow, can anyone fill me in a little on how the transparency feature works using RMW and or what the rules might be when creating images that use this function or bit set in the object on the obj list? my guess is that getting transparency is only really achieved through RMW bit and CRY coloring or can the RMW bit be used with RGB successfully? Ive seen the Blobs.bin example which i think zerosquare?! or someone else has created (correct me if im wrong on the author) looks to be using several bitmaps overlayed using this feature...
  11. Burning Eproms

    If you assemble using smac, this will get wrongly assembled as move.l a0,sp which means your stack will point at $0, and your program might crash if you're not setting the stack afterwards! I found this the hard way a couple of years back . im using the older linker/compiler at the moment. Looks like the code matthias posted from bastian schick helped alleviate a few problems. Using this prior to everything in my program and then setting up the stack again and initializing video and other basics it works with no problems finally. I was able to test burn this to some chips and try it on a stub jag. It seems to boot properly every time now and even through the jag cd, but then again its still a stub jag. Id like to continue testing it on a full production system to make 100 % sure everything is still ok. For now, i wont say its solved as i may speak too soon heh.. Looks as if this has solved the issue. Many thanks to those who have made suggestions and helped along the way. I have made a few successfull eprom burns that boot flawlessly over 50 times in a row on a production un-modified NTSC console
  12. Burning Eproms

    If you assemble using smac, this will get wrongly assembled as move.l a0,sp which means your stack will point at $0, and your program might crash if you're not setting the stack afterwards! I found this the hard way a couple of years back . im using the older linker/compiler at the moment. Looks like the code matthias posted from bastian schick helped alleviate a few problems. Using this prior to everything in my program and then setting up the stack again and initializing video and other basics it works with no problems finally. I was able to test burn this to some chips and try it on a stub jag. It seems to boot properly every time now and even through the jag cd, but then again its still a stub jag. Id like to continue testing it on a full production system to make 100 % sure everything is still ok. For now, i wont say its solved as i may speak too soon heh..
  13. Burning Eproms

    Very good point ^^^ I personally did not know that the system upon boot up set itself to a stop object already.... I was under the impression you had to set the hw and put it on a stop obj to keep the system happy or else when the VI/Interrupts are enabled the olp would have nothing to process and crash/lock the system.... If i were to copy my binary file after bootup its a possibility that the stock rom is putting the stop obj in the middle of ram and im just overwriting it when copying to ram then which would explain my problems ive been having...
  14. Burning Eproms

    Matthias and Matmook, thanks for the replies. I have tried the supplied code you suggested with it "shutting down" the jaguar esentially and setting the OP to a stop object at location $0 This seems to work very well and my loader loop loads my binary to ram which and executes. Seems my program startup is a little screwy because ive tried the same thing using just the atari startup.s file as its own binary to just display the licensed to or by logo and this loads perfectly fine, however when swapping the binary loaded to ram it seems my program is not initializing something right.... Sound plays but garbled scaled graphics appear. Atleast im in the right direction now though Thanks to all.
  15. Burning Eproms

    it isnt actually.... its defined within the cart loader program... i can however relocate this.. Do you think it may hve to do with the transition from a stop obj to a real list by chance? waiting until an interrupt completes now prior to loading in the list is how ive got it setup at the moment, but this is within the program thats loaded to ram. one the loader program dumps the binary file to ram it that program in ram takes over and finishes setting up a few system settings. Another thing i thought might be holding it back is the possibility of writing the stop obj with the 68k or the gpu... ive heard the 68k will do it in two writes where as the gpu can do it in a single write and be done. Any real issues with using the 68k to set the OLP to a stop specifically? Ive seen quite a few other programs do this as well which makes me think its not a huge deal but others swear the gpu is the only way to set the OLP to a stop upon system startup (ie atari startup routine) Ill see if i can post a snip of code of how i have it setup at the moment when i get home.
×