hloberg Posted July 21, 2021 Share Posted July 21, 2021 wrote a new version on Uno card game, Uno Plus. added color, speed, speech and some of the variations on Uno such as: All draw 2 on 2: All other players draw 2 when a 2 is played. 7 swap: play a 7 and you can swap cards with another player. Draw till play: must draw cards till one is playable. Can't play Draw 4 till last playable: Can only play a draw 4 if it is the only card that can be played. Take must play: If you draw a card and it is playable you can play it immediately. Also have a option to save you game choice profile to disk here is the game screen. It's on my projects blog: It's also on my https://ti99resources.wordpress.com/ add here is the files: unoplus.zip Enjoy 9 Quote Link to comment https://forums.atariage.com/topic/323111-uno-game-in-xb/ Share on other sites More sharing options...
+eebuckeye Posted July 21, 2021 Share Posted July 21, 2021 It is incredible to see the TI get all of this love! 2 Quote Link to comment https://forums.atariage.com/topic/323111-uno-game-in-xb/#findComment-4868241 Share on other sites More sharing options...
+arcadeshopper Posted July 22, 2021 Share Posted July 22, 2021 looking at compiling this and you have two def statements that are nono's.. can you break those into a table of values instead of def? 1 Quote Link to comment https://forums.atariage.com/topic/323111-uno-game-in-xb/#findComment-4869119 Share on other sites More sharing options...
tmop69 Posted July 23, 2021 Share Posted July 23, 2021 7 hours ago, arcadeshopper said: looking at compiling this and you have two def statements that are nono's.. can you break those into a table of values instead of def? You need also to remove the float on line 250 (it seems related to the random cards generator, so it should be quite easy to rewrite). Quote Link to comment https://forums.atariage.com/topic/323111-uno-game-in-xb/#findComment-4869320 Share on other sites More sharing options...
hloberg Posted July 23, 2021 Author Share Posted July 23, 2021 (edited) Oh, sounds cool to compile it. OK, give me a day & I'll post here a corrected version. I assume you are going to be using HW 256 compiler? just looked at the code. the functions should be easy to replace. I programmed this in Notepad++ and I'll just do a search and replace with the code. line 250 is a much faster way of getting a random number then RND. I probably have it several places in the code. I'll replace it with RND. Also I use CALL SAY a lot which is also no supported by 256. i'll remove those references since they usually was included with a CALL SOUND too it shouldn't impact the game. Also, when you do compile it you might have to add some timing loops or the action flies by so fast you can't tell what happened. You have my blessing to alter the program for compiling purposes if need be. You know, I converted this from my Atari Microsoft BASIC version were I had to use timing loops to slow down the code or it zipped by too fast, not so in TIXB. One of the main differences was, Atari MSB can use integers as well a float. Just changing in Atari MSB from float to integer really sped up that program. You really don't realize how these floating point routines really slow a program down. Edited July 23, 2021 by hloberg 2 Quote Link to comment https://forums.atariage.com/topic/323111-uno-game-in-xb/#findComment-4869721 Share on other sites More sharing options...
hloberg Posted July 23, 2021 Author Share Posted July 23, 2021 removed all the INT() references since they would be pointless. a table won't work for the functions. might just make it GOSUBs since the compile won't slow. the original version of TI99 Uno was in KullXB package and had multi-color fonts but was painfully slow with screen writes. I had toyed with using 256XB to create multi-color fonts in this Uno+ (which is why the black background) but it'd took too long to have modified. maybe one day. 2 Quote Link to comment https://forums.atariage.com/topic/323111-uno-game-in-xb/#findComment-4869761 Share on other sites More sharing options...
hloberg Posted July 24, 2021 Author Share Posted July 24, 2021 dumb. I removed all the INT which is fine for the compile but testing, no so much. Quote Link to comment https://forums.atariage.com/topic/323111-uno-game-in-xb/#findComment-4869795 Share on other sites More sharing options...
+arcadeshopper Posted July 24, 2021 Share Posted July 24, 2021 dumb. I removed all the INT which is fine for the compile but testing, no so much. No floating pointSent from my LM-V600 using Tapatalk Quote Link to comment https://forums.atariage.com/topic/323111-uno-game-in-xb/#findComment-4869801 Share on other sites More sharing options...
+arcadeshopper Posted July 24, 2021 Share Posted July 24, 2021 needs to be integer only, no floating point Quote Link to comment https://forums.atariage.com/topic/323111-uno-game-in-xb/#findComment-4869842 Share on other sites More sharing options...
hloberg Posted July 24, 2021 Author Share Posted July 24, 2021 26 minutes ago, arcadeshopper said: needs to be integer only, no floating point the program under Atari MSB was integer set. But I now remember having to make a few changes to compensate for TIXB float. I just gotta look over both codes to find those again & set back to integer. on the plus side all the function calls were converted. I just put the formula in the place of the fn calls. 2 Quote Link to comment https://forums.atariage.com/topic/323111-uno-game-in-xb/#findComment-4869867 Share on other sites More sharing options...
hloberg Posted July 24, 2021 Author Share Posted July 24, 2021 Will this line compile? I=((A<1)*-3)+((A>3)*-1)+(((A>0) AND (A<4)*-1)*A) did see anything specific in manual it wouldn't but haven't tried the compiler yet. Quote Link to comment https://forums.atariage.com/topic/323111-uno-game-in-xb/#findComment-4869878 Share on other sites More sharing options...
tmop69 Posted July 24, 2021 Share Posted July 24, 2021 1 hour ago, hloberg said: Will this line compile? I=((A<1)*-3)+((A>3)*-1)+(((A>0) AND (A<4)*-1)*A) did see anything specific in manual it wouldn't but haven't tried the compiler yet. yes, it should. Quote Link to comment https://forums.atariage.com/topic/323111-uno-game-in-xb/#findComment-4869924 Share on other sites More sharing options...
tmop69 Posted July 24, 2021 Share Posted July 24, 2021 8 hours ago, hloberg said: Oh, sounds cool to compile it. OK, give me a day & I'll post here a corrected version. I assume you are going to be using HW 256 compiler? just looked at the code. the functions should be easy to replace. I programmed this in Notepad++ and I'll just do a search and replace with the code. line 250 is a much faster way of getting a random number then RND. I probably have it several places in the code. I'll replace it with RND. Also I use CALL SAY a lot which is also no supported by 256. i'll remove those references since they usually was included with a CALL SOUND too it shouldn't impact the game. Also, when you do compile it you might have to add some timing loops or the action flies by so fast you can't tell what happened. You have my blessing to alter the program for compiling purposes if need be. You know, I converted this from my Atari Microsoft BASIC version were I had to use timing loops to slow down the code or it zipped by too fast, not so in TIXB. One of the main differences was, Atari MSB can use integers as well a float. Just changing in Atari MSB from float to integer really sped up that program. You really don't realize how these floating point routines really slow a program down. I use XB256 to speedup the conversion. In particular CALL LINK("SYNC"), CALL LINK("DELAY",VALUE) for adding delays. Usually 2/3 frames of delay to manage the input (CALL KEY/JOYST). The FOR loops are replaced with "DELAY". E.g. FOR T=1 TO 1000::NEXT T is equivalent to CALL LINK("DELAY",4000). The CALL SAY is supported (the limits are indicated in the Compiler's manual). Do not remove them, but it's better to check if the Speech is available or not: CALL PEEK(-28672,SS)::IF SS=96 THEN CALL SAY("HELLO") If not available add a CALL SOUND instead. The CALL SOUND with negative duration have to be adapted in some cases, adding a delay after them. In general a CALL SOUND(-100,...) needs a CALL LINK("DELAY",10). For RND you can use a CALL LINK("IRND",10,TP) instead that generates an INT from 0 to 9 assigned to the TP variable. 2 Quote Link to comment https://forums.atariage.com/topic/323111-uno-game-in-xb/#findComment-4869931 Share on other sites More sharing options...
hloberg Posted July 24, 2021 Author Share Posted July 24, 2021 (edited) I went ahead a pulled the CALL SAYs, they are cute but not necessary since they are all companion-ed with CALL SOUND statements. It's mostly tested and works (stayed up way to late last night testing ). I have all the float points fixed and the functions converted. Put back INT statements for testing as won't run under TI99XB float correctly without them. but when ran under Atari MSB's integer math without INT the program ran fine so the compiler ignoring them should be OK. If there are any bugs let me know. otherwise, you have my permission to do whatever needed in 256 to slow the program down or whatever so it can compile. when done l'll post to https://ti99resources.wordpress.com/ with the other 3 versions of Uno I have done for the TI99 ? . Oh, I also want the code. If I ever do decide to add colored text using 256 it'll be easy to just add it to the compile & recompile. Here is the file in Classic99 FIAD format & the original program in .txt (for comparison) and the modified program in .txt. have fun compiling. Im already moving on to another project of adding an educational software section to https://ti99resources.wordpress.com/ UNO+forcompile.7z Edited July 24, 2021 by hloberg 7 Quote Link to comment https://forums.atariage.com/topic/323111-uno-game-in-xb/#findComment-4870100 Share on other sites More sharing options...
tmop69 Posted July 27, 2021 Share Posted July 27, 2021 The compiled version is available here: UNO+ Note that various changes were required (fix for file load/saving, crash due to double "::", fix for some DISPLAY AT, etc.) to be able to compile the source above... Please, test it since I do not remember how to play and this is also the English version of the game. 2 Quote Link to comment https://forums.atariage.com/topic/323111-uno-game-in-xb/#findComment-4871965 Share on other sites More sharing options...
+arcadeshopper Posted July 27, 2021 Share Posted July 27, 2021 4 hours ago, tmop69 said: The compiled version is available here: UNO+ Note that various changes were required (fix for file load/saving, crash due to double "::", fix for some DISPLAY AT, etc.) to be able to compile the source above... Please, test it since I do not remember how to play and this is also the English version of the game. thanks for doing this! Quote Link to comment https://forums.atariage.com/topic/323111-uno-game-in-xb/#findComment-4872066 Share on other sites More sharing options...
hloberg Posted July 27, 2021 Author Share Posted July 27, 2021 thanks @tmop69 ya'll have fun with it. Quote Link to comment https://forums.atariage.com/topic/323111-uno-game-in-xb/#findComment-4872135 Share on other sites More sharing options...
tmop69 Posted July 28, 2021 Share Posted July 28, 2021 Updated version 1.1 available: UNO+ v1.1 Please, download this new one, since the old version is crashing at game over! 1 Quote Link to comment https://forums.atariage.com/topic/323111-uno-game-in-xb/#findComment-4872615 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.