Iwantgames:) Posted November 13, 2015 Share Posted November 13, 2015 I hope to get one more done. I started last night but couldn't fit it in 10 lines so gonna rework it tonight Quote Link to comment Share on other sites More sharing options...
Opry99er Posted November 14, 2015 Author Share Posted November 14, 2015 I have had very good success chaining these programs together... Tursi's has a very clever 'exit' built in, so no need to add anything. On the ones with a stable GOTO that just loops indefinitely (like my Silent Snowman) I instead send control to a subprogram that does a CALL KEY loop amd then bounces to a CALL CLEAR, CALL SCREEN(, CALL DELSPRITE, and CALL CHARSET to reset all graphics, then returns to the next demo. Seems to be working well. 2 Quote Link to comment Share on other sites More sharing options...
Opry99er Posted November 14, 2015 Author Share Posted November 14, 2015 lucien has posted a most interesting demo of his own on the entries thread. Quote Link to comment Share on other sites More sharing options...
Opry99er Posted November 14, 2015 Author Share Posted November 14, 2015 All programs are successfully chained now. I had to add some RESTORE lines and a couple lines for "exit" routines where needed (to advance to the next demo). I also had to change the names of a few variables to play nice with DIM'd arrays. All demos work as they should. On size: We have only 3199 bytes left of PROGRAM space (unexpanded, console only space) after lucien's demo... So we are getting tight. I think we will have room for 3 POSSIBLY 4 more demos on this one program, and then we may have to have a "Side B" program that is on the flipside of the tape. Having fun. Will update further when more demos are posted. 1 Quote Link to comment Share on other sites More sharing options...
sometimes99er Posted November 14, 2015 Share Posted November 14, 2015 (edited) On the work you're doing. The resulting CS1 (program) will take long to load and also take some time to "prescan" before finally running. Can't you simply chain programs ? Make one program "run" the next. Relatively short loading inbetween. Then the only limiting factor as such would be tape length ? Also I have 5 more ideas noted for the contest, but I will hold back and do some assembler game programming instead. Edited November 14, 2015 by sometimes99er Quote Link to comment Share on other sites More sharing options...
Opry99er Posted November 14, 2015 Author Share Posted November 14, 2015 Yes, it will take a bit of time to initially load. But the prescan is not bad at all. I will post up the code here when I get back from the build-and-grow workshop with my son. Probably this afternoon. The issue with loading each demo from tape one at a time is that with tape, you cannot RUN or OLD from CS1 from within a program. It has to be done manually. Many of the tape games from BITD were fully maxed out games that took 3 or 4 minutes to load the data... Nice thing is, once loaded, you can run all the programs, one after the other, with the click of a button. No wait times between demos. I'll post the code in a bit. You guys can tell me what you'd prefer. Quote Link to comment Share on other sites More sharing options...
Opry99er Posted November 14, 2015 Author Share Posted November 14, 2015 (edited) I need to look a little deeper into the CS1 input... using OPEN and READ might work? Let me think some more.. Going to go through some XB manual stuff here in a bit. Edited November 14, 2015 by Opry99er Quote Link to comment Share on other sites More sharing options...
Opry99er Posted November 14, 2015 Author Share Posted November 14, 2015 I made a couple last second changes and haven't tested it yet. Let me know what you think and if anything needs to be adjusted. Press any key to advance... some demos are more responsive than others to the CALL KEY. Most have to reach a certain point in the demo to allow the keypress. DEMOCHAIN.zip 1 Quote Link to comment Share on other sites More sharing options...
Iwantgames:) Posted November 14, 2015 Share Posted November 14, 2015 I just tried out your chained program pretty cool, I don't know if its possible or not but could you make it so when you get to the last demo and press enter it loops back to the first one? 2 Quote Link to comment Share on other sites More sharing options...
Opry99er Posted November 14, 2015 Author Share Posted November 14, 2015 Karsten's program is a toughie (the last one)... I am having a tough time putting an exit in there without affecting the performance of the demo... I'll give it another shot tonight. Quote Link to comment Share on other sites More sharing options...
Iwantgames:) Posted November 15, 2015 Share Posted November 15, 2015 Took some of you guys code and modified it to make a new demo Quote Link to comment Share on other sites More sharing options...
+jedimatt42 Posted November 15, 2015 Share Posted November 15, 2015 Well, I've never tried to code small before so this was a fun challenge... Regrettably my concept fails to fit. But I want to share it anyway... I could and may change the message to fit, but that isn't what I was going for. This isn't an actual entry, since it doesn't meet the criteria. But I enjoyed doing this. First time I've used DATA and READ. Title: XmasLights Story: Too many bytes for Christmas Programmer: Matthew Splett 1 CALL CLEAR::CALL SCREEN(15)::CALL COLOR(2,7,16,10,11,15,11,13,15,12,7,15)::G$="001C3E7F7F7F3E1C"::CALL CHAR(104,G$,112,G$,120,G$) 2 K$=RPT$("03071CF0",3)::CALL CHAR(42,"2854AA54AA5428",43,"2050A85020",44,"205020",45,K$)::FOR I=1 TO 8::C=INT(RND*226)+1 3 CALL SPRITE(#I,42,16,3,C,9,3,#I+8,43,16,2,C+13,7,2,#I+16,44,16,1,C+27,5,1)::NEXT I::CALL VCHAR(6,3,45,7) 4 CALL VCHAR(6,7,45,7)::READ M::FOR I=1 TO M::READ L,C::FOR J=1 TO L::READ Y,X::CALL VCHAR(Y,X,C)::NEXT J::NEXT I 5 FOR I=1 TO 8 STEP 2::CALL CHAR(45,SEG$(K$,I,16))::CALL COLOR(11,4+I,15,12,14-I,15)::NEXT I::GOTO 5 6 DATA 10,2,104,5,3,5,7,3,112,7,4,8,5,7,6,9,120,10,9,10,10,10,11,10,12,9,11,9,10,11,9,12,10,12 7 DATA 11,7,112,9,14,10,14,11,14,12,14,10,15,9,16,10,17,7,120,9,19,10,19,11,19,12,19,10,20,9,21,10 8 DATA 22,12,112,9,24,10,24,11,24,12,25,12,26,11,27,10,27,9,27,12,27,13,27,14,26,14,25,13,112,14,8 9 DATA 15,9,16,9,17,10,18,11,19,11,20,12,14,12,15,11,16,11,18,9,19,9,20,8,12,120,17,14,18,14,19,14 10 DATA 20,14,17,15,18,16,19,16,20,16,17,17,18,18,19,18,20,18,10,112,17,23,18,23,19,23,20,23,18,22 11 DATA 17,21,18,20,19,20,20,21,19,22,10,120,17,28,17,27,17,26,18,25,19,26,19,27,20,28,21,27,21,26 12 DATA 21,25 -M@ 3 Quote Link to comment Share on other sites More sharing options...
Iwantgames:) Posted November 15, 2015 Share Posted November 15, 2015 Nice Almost fit too, only 2 extra lines. Quote Link to comment Share on other sites More sharing options...
Opry99er Posted November 15, 2015 Author Share Posted November 15, 2015 Rasmus.... Not 100% sure on the Christmas-y theme, but damn that was nice!!! Iwantgames: that is a good contribution. Every one of us learned by studying, copying, and imitating the code of others. Really dig it. And @jedimatt: LOVE your demo. No way to crunch anything further? It really is lovely. I tried crunching lines for a bit but for some reason get hung up with the last few DATA statements. Please get it squished. It needs to be on the demo tape..... seriously. Quote Link to comment Share on other sites More sharing options...
BuckoBrand Posted November 15, 2015 Share Posted November 15, 2015 (edited) dad helped me with the math and the sled moving... it is called christmas day sledding 100 CALL CLEAR :: CALL COLOR(9,16,1):: CALL CHAR(100,"FFFFFFFFFFFFFFFF80C0E0F0F8FCFEFF") REM this line sets up the snow graphics and screen 200 CALL CHAR(104,"00040A21723CBC4E271309040201000000C0C000A04008130B84CAF172789840"):: CALL MAGNIFY(3) REM sled graphics and sled size (i used maggellan) 300 ROW=3 :: COL=1 :: REPEAT=22 REM this is how my loop starts 400 FOR X=1 TO 22 :: CALL VCHAR(ROW,COL,100,REPEAT) :: ROW=ROW+1 :: COL=COL+1 :: REPEAT=REPEAT-1 :: NEXT X REM drawing the snow 500 ROW=2 :: COL=1 :: FOR X=1 TO 23 :: CALL HCHAR(ROW,COL,101):: ROW=ROW+1 :: COL=COL+1 :: NEXT X REM drawing the top of the snow 600 SPRITEROW=1 :: SPRITECOL=1 REM this is where the sled starts 700 CALL SPRITE(#1,104,7,SPRITEROW,SPRITECOL):: DISPLAY AT(4,:"MERRY CHRISTMAS!!!";:: DISPLAY AT(6,:"FROM BUCKOBRAND!!!" REM this line draws my sled and writes a message 800 SPRITEROW=SPRITEROW+1 :: SPRITECOL=SPRITECOL+1 REM this line makes my sled move down and over 900 CALL LOCATE(#1,SPRITEROW,SPRITECOL):: IF SPRITEROW>192 THEN SPRITEROW=0 :: SPRITECOL=0 REM this line redraws the sled in the new place 1000 GOTO 800 REM this line sends the program back to the sled moving line Edited November 15, 2015 by BuckoBrand 5 Quote Link to comment Share on other sites More sharing options...
Opry99er Posted November 15, 2015 Author Share Posted November 15, 2015 Buck has been working on this for several days. I helped him with getting his VCHAR for the snow in a loop... I also showed him how to do the SPRITE in the same way. Other than that, it's all BuckoBrand. Good job Buck. Quote Link to comment Share on other sites More sharing options...
Iwantgames:) Posted November 15, 2015 Share Posted November 15, 2015 Nice good work Quote Link to comment Share on other sites More sharing options...
Tursi Posted November 15, 2015 Share Posted November 15, 2015 This isn't an actual entry, since it doesn't meet the criteria. But I enjoyed doing this. First time I've used DATA and READ. Did a little data compression for you - would you like to enter it now? 1 CALL CLEAR::CALL SCREEN(15)::CALL COLOR(2,7,16,10,11,15,11,13,15,12,7,15)::G$="001C3E7F7F7F3E1C"::CALL CHAR(104,G$,112,G$,120,G$) 2 K$=RPT$("03071CF0",3)::CALL CHAR(42,"2854AA54AA5428",43,"2050A85020",44,"205020",45,K$)::FOR I=1 TO 8::C=INT(RND*226)+1 3 CALL SPRITE(#I,42,16,3,C,9,3,#I+8,43,16,2,C+13,7,2,#I+16,44,16,1,C+27,5,1)::NEXT I::CALL VCHAR(6,3,45,7) 4 CALL VCHAR(6,7,45,7)::READ M::FOR I=1 TO M::READ N::L=INT(N/256)::C=N-L*256::FOR J=1 TO L::READ N::Y=INT(N/256):=N-Y*256::CALL VCHAR(Y,X,C)::NEXT J::NEXT I 5 FOR I=1 TO 8 STEP 2::CALL CHAR(45,SEG$(K$,I,16))::CALL COLOR(11,4+I,15,12,14-I,15)::NEXT I::GOTO 5 6 DATA 10,616,1283,1287,880,1796,2053,1798,2424,2569,2570,2571,2572,2315,2314,2825,3082,3083,1904,2318,2574,2830,3086 7 DATA 2575,2320,2577,1912,2323,2579,2835,3091,2580,2325,2582,3184,2328,2584,2840,3097,3098,2843,2587,2331,3099,3355 8 DATA 3610,3609,3440,3592,3849,4105,4362,4619,4875,5132,3596,3851,4107,4617,4873,5128,3192,4366,4622,4878,5134,4367 9 DATA 4624,4880,5136,4369,4626,4882,5138,2672,4375,4631,4887,5143,4630,4373,4628,4884,5141,4886,2680,4380,4379,4378 10 DATA 4633,4890,4891,5148,5403,5402,5401 Since all the numbers were small, I packed the L/C and Y/X pairs by multiplying the first by 256 and adding the second -- essentially byte packing two 8 bit values into a 16-bit value. Reading back, I just reverse the process. INT(N/256) gives us the high byte, and then we subtract to get the remainder, which is the low byte. 4 Quote Link to comment Share on other sites More sharing options...
Iwantgames:) Posted November 15, 2015 Share Posted November 15, 2015 Nice now its good to go! Quote Link to comment Share on other sites More sharing options...
Opry99er Posted November 15, 2015 Author Share Posted November 15, 2015 Dooooope. well done!!!! Quote Link to comment Share on other sites More sharing options...
+jedimatt42 Posted November 15, 2015 Share Posted November 15, 2015 Did a little data compression for you - would you like to enter it now? Since all the numbers were small, I packed the L/C and Y/X pairs by multiplying the first by 256 and adding the second -- essentially byte packing two 8 bit values into a 16-bit value. Reading back, I just reverse the process. INT(N/256) gives us the high byte, and then we subtract to get the remainder, which is the low byte. Oh, that is brilliant! I love it! And thank you so much! This is a great technique. I'll get it over to the entries thread then -M@ Quote Link to comment Share on other sites More sharing options...
+jedimatt42 Posted November 15, 2015 Share Posted November 15, 2015 dad helped me with the math and the sled moving... it is called christmas day sledding Oh, I like that! Reminds me when I was a kid and my best friend and I would always try and stay on the sled together. Nice! Quote Link to comment Share on other sites More sharing options...
Iwantgames:) Posted November 15, 2015 Share Posted November 15, 2015 Where can I download some extended basic manuals? I enjoyed learning the little I have already and want to learn how to make a whole game Quote Link to comment Share on other sites More sharing options...
Opry99er Posted November 15, 2015 Author Share Posted November 15, 2015 http://atariage.com/forums/topic/153704-ti-994a-development-resources/page-1 Quote Link to comment Share on other sites More sharing options...
Opry99er Posted November 15, 2015 Author Share Posted November 15, 2015 (edited) Couple teasers for you guys. Got the sizing down just right now... Insert lays in the case perfectly... This was a test run with printer paper, so it does not look perfect. I am doing it on nice semi-gloss card stock when the time comes. Edited November 15, 2015 by Opry99er 2 Quote Link to comment Share on other sites More sharing options...
Recommended Posts
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.