Jump to content


  • Content Count

  • Joined

  • Last visited

Community Reputation

753 Excellent


About artrag

  • Rank

Profile Information

  • Gender

Recent Profile Visitors

25,906 profile views
  1. Look for stic.txt in the jzintv files (docs/programming IIRC) It explains the meaning of each bit in the parameters used by the sprite command because they match with the stic registers
  2. No idea why, but if you read the book probably you will find Oscar is explaining how sprite parameters work and how gram positions are used by sprites
  3. The 5*8 part of the 3rd parameter tells tos use gram position number 5 as sprite
  4. Maybe you could rename all symbols in the first source by adding a _ or another prefix by search and replace. A batch having in input the original symbol list and the source maybe could be feasible
  5. @DZ-Jay About Galaxian, I have added an early implementation for bullets and collisions, but the development is on hold
  6. Is there a way to know in intybasic which JPL page is hosting a given label ? I see that the information is generated in the LST file, just after the address of the data falling in the pages I would get the same information in order to code a macro like this set_page(Select_options) as equivalent to set_page(2) where Select_options: is in page 2 ASM ORG $A000:2 Would it be possible ? Is there in at least in ASM an operator that returns the rom page of a given label ?
  7. Ask on www.msx.org You can get a lot of help there
  8. Thanks for the suggestions. I've pre-computed part of the pointers in a separate frame and now frame tearing seems more acceptable. I've attached BAS, BIN, ASM and LST and sources for your curiosity cloudy montain reboot.rar
  9. Do you know if CPU is capable of moving 190 words in a frame ? I'm trying to optimize this code in order to stay within a frame, but it seems that the problem is the number of moved words itself... plotscreen: procedure xA = ((#wX/4) and 1) yA = ((#wY/4) and 1) tX = ((#wX/8) % 9) tY = ((#wY/8) % 9) mX = (#wX/8/9) % wMAP my = (#wY/8/9) % hMAP #j = (xA + yA*2)*(9*9) ' first line imap = 0+mX + (0+mY)*wMAP #i = map(imap) + #j SCREEN #xyrooms,#i + (tX + tY*9) , 0 ,9-tX,9-tY,9 imap = (1+mX)%wMAP + (0+mY)*wMAP #i = map(imap) + #j SCREEN #xyrooms,#i + tY*9 , 0 + 9-tX ,9 ,9-tY,9 imap = (2+mX)%wMAP + (0+mY)*wMAP #i = map(imap) + #j SCREEN #xyrooms,#i + tY*9 , 0 + 18-tX ,tX+1,9-tY,9 ' second line imap = 0+mX + ((1+mY)%hMAP)*wMAP #i = map(imap) + #j SCREEN #xyrooms,#i + tX , 0 + (9-tY)*20 ,9-tX,1+tY,9 imap = (1+mX)%wMAP + ((1+mY)%hMAP)*wMAP #i = map(imap) + #j SCREEN #xyrooms,#i , 9-tX+(9-tY)*20,9 ,1+tY,9 imap = (2+mX)%wMAP + ((1+mY)%hMAP)*wMAP #i = map(imap) + #j SCREEN #xyrooms,#i ,18-tX+(9-tY)*20,tX+1,1+tY,9 end For your fun, the snippets is used in the demo in attach... demo.cfg demo.bin
  10. thanks, I ended to use the first parameter as an offset SCREEN #room0_0,#j, 0,9,9,9 #j = #j + 9*9
  11. I was trying to code a 4 frame animation: I need to plot a small 9x9 square of tiles on the screen taken from different positions in a large ROM area ad change the place from the data come at each frame I was doing this for i=0 to 3 SCREEN VARPTR #room0_0(i*9*9),0,0,9,9,9 wait next BUT it seems that SCREEN does not support VARPTR.... Oscar can we add this feature if it is missing ? Or Is there a workaround I cannot see? Maybe playing on the origin_offset....
  12. You was executing data as they were instructions. The best way to get a crash...
  13. artrag

    SGM 5th run

    No the black one
  14. artrag

    SGM 5th run

    Mine has arrived! Thanks
  • Create New...