Jump to content

jgerrie

Members
  • Posts

    18
  • Joined

  • Last visited

Everything posted by jgerrie

  1. Hey Vorticon, Very neat TI program. Thanks for starting this interesting discussion of early BASIC AI programming. I've been trying to compile a list (and working examples) of such programs, including some from Heiserman's book. Type-in-Mania-AI-Programs Thought you and others here might be interested.
  2. Now in all it's glory a port of the VIC version of the game to the TRS-80 MC-10. Game Play vid CLOSEOUT can be played here: MC-10 Javascript Emulator
  3. The .dsk is for the TRS-80 Model 1&3 (i.e. the Senior TRS-80 system) and not the Coco. The other version is for the TRS-80 Micro Color Computer or MC-10, which is the little brother to the Coco. Sorry no Coco version yet. I could make the small number of changes needed to make the MC-10 version work on the Coco. Let me know if you're interested.
  4. Wanted to let people know that I have completed typing and debugging a working version of the example program "Mazies & Crazies" from Frank DaCosta's book "Writing Adventure Programs on the TRS-80". Here is a link to my latest post on the project: http://jimgerrie.blogspot.com/2020/04/retrochallenge-april-2020-mazies_19.html It is my impression that this program does not exist in any playable form on any TRS-80 archive sites out there. Anyone know if other working versions exist? I read that a TI99 version of the program also exists. The source is on my github: https://github.com/jggames/trs80mc10/tree/master/quicktype/Dungeon/Mazies The TRS-80 version can be downloaded here: https://drive.google.com/open?id=1_3FddzKahUKnS5P5peXqqXwJTyej2b-g MAZIES can be played in the Javascript MC-10 Emulator here: http://faculty.cbu.ca/jgerrie/MC10/ Just select it from the "-Select Cassette-" menu and then type RUN and hit Enter. Thanks.
  5. Captain Breakout, You are not alone in your love of type-ins. http://faculty.cbu.ca/jgerrie/Home/Type-in-Mania.html Great work. Jim Gerrie
  6. Thanks Anders for providing the link. Wrathchild, I should mention that the C64 listing has some bugs in it, including one fatal one that I mention in my blog about the project. http://jimgerrie.blogspot.com/2019/06/coup-detat-for-sharp-mz80.html I added levels to my version because I found the original *extremely* unforgiving. Anyone out there remember playing it to a win in its original form? I'd like to know if there was a strategy...
  7. FYI (just in case). The is a commodore version. Here's a blog post about my own adventures in converting the program. https://jimgerrie.blogspot.com/2019/06/coup-detat-for-sharp-mz80.html
  8. Thanks for the Suggestion. Coup D'Etat is a really cool game. I have converted it to TRS-80 MC-10 and ironed out a lot of bugs from the C64 source I was working from. Not sure the C64 source would be winnable in its original form. For those interested in what I've done to the source look here: https://github.com/jggames/trs80mc10/tree/master/quicktype/Strategy %26 Simulation/Coup The game can be tried out here via a Javascript emulator: http://faculty.cbu.ca/jgerrie/MC10/
  9. Great work. Good to see the source code still getting more mileage from its Dark Basic beginnings. Code on!
  10. Bomberpunk, Used your QBasic code to port a version of your remake of Classic Football to the TRS-80 Micro Color Computer (which runs Micro Color Basic, another Microsoft product). Thanks for sharing your source. It saved me a lot of work. I've been wanting to make a version of this game for some time. Here's a vid: https://youtu.be/zTsyjsi1vPE Jim G.
  11. Made Flappy Bird and 2048 in BASIC on my MC-10. http://youtu.be/JFJ1z7c2QhE http://youtu.be/qwt9Y9PXeNc
  12. The graphics are not as good as the Coco 2 because you cannot access the very highest 256X192 B/W resolution, only the 128X96, 4 color resolution. That being said, I've never missed high res. The MC-10's really for having that ZX-81-low-budget-8-bit kind of fun--i.e. chunky graphics galore. Take a look here for some games of that ilk: http://faculty.cbu.ca/jgerrie/Home/jgames.html GAME2048 and JIMVADERS will run in 4K.
  13. I didn't think the phasers were too bad. 500 will usually get one of them. I only use them when the Klingons cloak, and then it's off for a fill up at the nearest starbase. I had noticed the lack of any navigational anomalies to deal with. However, if you destroy a base with a PT you can be blasted someplace at random, but I don't see that happening often... 8 bytes per numeric variable, eh?! Every numeric variable is floating point in the MC-10, and they each take 5 bytes to encode. Must be much higher accuracy on the TI, but that's what you'd expect from TI! But numeric vars are pretty fast in Micro Color Basic.... Store as string vars instead?
  14. Yes there are always tweaks and modifications that cry out for implementation... 1285 C=CC:IFRND(10)>9THENC=C+.5:IFC>=9THENC=1 For example, I changed the GUIDED torpedo routine to misfire on a 1 in 10 chance, just to moderate this lazy option. There has to be some disadvantages for relying on computers for everything!
  15. The Klingon's make no comments in this version. Animations run pretty fast on my MC-10. Here's a vid: http://youtu.be/2kW70qVA7SA?list=UUUtXDjPX3EbKaByo5MeFlYg Here are a few comments about my version of the code modified for the MC-10 (on Github). The comments refer to the code snippet just above them. My MC-10 version has removed all ELSE commands and changed all PLAY commands to simpler SOUND commands. Also all STRING$ commands have been replaced by literal strings, since graphic characters can be input directly from the MC-10's keyboard. 1 C1=1:C2=32 2 IFMID$(M$,C2,1)<>""ANDMID$(M$,C2,1)<>" "THENC2=C2-1:GOTO2 3 PRINTMID$(M$,C1,C2-C1):C1=C2+1:C2=C1+31:IFC1<=LEN(M$)THEN2 4 RETURN The above is my 32 character word wrap routine. I use it for all printed messages instead of inserting spaces in them. It's also more flexible when it comes to messages that change length, such as when you have STR$() numeric data concatenated with a string. 420 GOSUB1650:H=H+1:IFH<150THEN390 If you need to fiddle to adjust the speed of the game because of differences in your machine from the original Coco version (I'm pretty sure the TI is probably faster), change the 150 value above to something higher if your machine is slower or something lower if your machine is faster. This is the countdown for the "pings" of the view screen, as in the original Star Trek show. 580 GOSUB650:FORH=1TON:GOSUB660:ONZGOTO590,595,594 590 NEXTH:IFF=0THEN640 591 H=H-1:GOTO620 594 TM=H:H=N:NEXTH:H=TM:GOTO680 595 TM=H:H=N:NEXTH:H=TM The ON/GOTO in line 580 is in the middle of a FOR/NEXT loop. As far as I can tell the jumps to 595 and 594 originally simply jumped out of the FOR/NEXT loop never to return. I just hate not closing nex loops on principle, and they can occassionally cause problems if they occur too often, so I added a temp variable and lines 595 and 594 to gracefully exit the loop before proceeding on to the original GOTO lines. 920 FORI=1TO3:IFC=K(I,1)ANDD=K(I,2)THENK(I,3)=-1:X=C:Y=D:R=320:GOSUB1560:I=3 930 NEXT:GOTO970 There was a rare problem where a photon torpedo hit would seem to register twice (two explosions in a row). I think this may have been a result of not gracefully exiting the for next loop as soon as the "hit" Klingon is found (why keep searching the other locations). So I added I=3 after the torpedo is found to hit one of the possible 3 Klingons that can be in any Quadrant. 950 GOSUB1580:PRINT@320,;:M$="WELL DONE! STARBASE DESTROYED!":GOSUB1:B=B-1:BT=BT-1:M2=4:X=C:Y=D:GOSUB1550 951 PRINT@352,;:M$="THE EXPLOSION HAS THROWN YOU OFF COURSE":GOSUB1:GOSUB1350:PRINT@320,;:C=RND(:W=RND(8)/2:GOTO560 I changed the word "DAMAGE" to explosion. Seemed to make more sense. Also added a pause (GOSUB1350) and a PRINT@ statement after the message, since occassionally more messages might occur that fill the screen beyond the 16 line limit of the MC-10. 1090 PRINT@320,"LAST BATTLE-CRUISER DESTROYED!":GOSUB1700:PRINT"THE ";U$;" IS SAVED!!":GOSUB1700:SOUND75,5:SOUND80,5 1091 PRINT"YOUR EFFICIENCY RATING ="INT(K7/(T-T0)*1000):END Added a call to line 1700 for a little moise when you win. Seems anti-climatic otherwise. Line 1700 in the original listing seemed to be an orphan anyway, so I tweaked it for a more congratulatory sound. 1100 CD=0:AF=0 1110 A=0:GOSUB380:PRINT@217,"OPT? "; 1120 GOSUB390:IFA>6THEN1120 1130 IFA$=CHR$(13)THENONA+1GOTO330,1290,1150,1160,1170,1280,1140:GOTO1120 1131 PRINT@249,B$(A*2+17);:PRINT@281,B$(A*2+18);:GOTO1120 1140 A=0:AF=0:FORJ=1TO8:FORI=1TO8:CC=INT(Z(I,J)/100)=INT((Z(I,J)-CC*100)/10) 1141 POKE16424+A+(I-1)*2,CC+112:POKE16425+A+(I-1)*2,Z(I,J)-CC*100-O*10+112-64*O:NEXT:A=A+32:NEXT:O=0:GOTO1110 1150 O=0:AF=0:FORA=40TO266STEP32:PRINT@A,Y$;:NEXT:PRINT@41,"STATUS REPORT:";:PRINT@106,"KLINGONS ="KT; 1151 PRINT@138,"STARDATES="INT(T0+TT-T);:PRINT@170,"STARBASES="BT;:GOTO1110 1160 IFK=0THENGOSUB1620:GOTO1110 1161 AF=1:CC=U:A=V:FORF=1TO3:IFK(F,3)<0THEN1270 1162 TM=F:F=3:NEXT:F=TM:W=K(F,1)=K(F,2):GOTO1180 1170 AF=0:PRINT@384,"ENTER START AND END CO-ORDINATES":PRINT@320,;:INPUT"(X,Y,X,Y)";CC,A,W,X When in the computer OPT mode, if you select TORPEDO DATA and then select any other options beside GUIDED TORPEDO, you garble the variables used to store your TORPEDO firing info. So I added the AF (autofire) variable switch to all the Computer options to turn off the autofire option if you don't select it right after selecting the TORPEDO DATA option. Now GUIDED TORPEDO will only work if you select it right after selecting the TORPEDO DATA opt. 1281 IFAF=0THEN1300 This line is the one added to the TORPEDO subroutine to prevent firing (and possible infinte loop) unless the AF variable is set to 1. 1360 FORZZ=H*.25+1TO1STEP-1:POKE49151,64:SOUND255,1:NEXT:RETURN The above poke just switches the screen of the MC-10 to orange from regular green to give a flickering screen effect when you are hit. 1520 T=T+.5:PRINT@64,INT(T);:GOSUB1500:IFT>T0+TTTHEN1060 This is the stardate countdown. It used to read T=T+1, but since the Coco is slower than an MC-10 I had to have it count more slowly (by .5s) or the game expected you to play at to high a speed to be fair. 1550 GOSUB1580:S(X,Y)=0:G(L,M)=K*100+B*10+S:RETURN 1560 K=K-1:IFK<0THENK=0:SOUND100,20 1561 GOSUB1550:GOSUB1420:PRINT@R,"KLINGON AT"STR$(INT(X))","RIGHT$(STR$(INT(Y)),2)" DESTROYED"; I added the check in 1560 above to prevent the problem mentioned above of double explosions from torpedo hits on some Klingons. If the hit registered twice the K variable could go to a negative number which really messed up the modification of the 3 digit number (i.e. 100s, 10s, 1s) calculated in 1550 used to store each Quadrant's info G(Klingons, Starbases, Stars). 1640 ZZ=PEEK(17025):PRINTLEFT$(BL$,16895-(PEEK(17024)*256+PEEK(17025)));:POKE17025,ZZ:RETURN The peeks in this routine above (17024) and 17025 are simply the way for the MC-10 to determine the screen location of the current cursor loation (0-511). It is used to print blanks of a particular length from that location to the 2nd last position of the screen (i.e. to clear the message area but not print in the bottom right corner so as to cause a linefeed for the entire screen). 1700 FORX=50TO70STEP5:SOUNDX,1:NEXT:RETURN This line was an orphan in my listing of the program. So I modified it and use it in the win routine to provide a little sound.
  16. The TI has 32 Columns like the MC-10 and an extra 8 lines to play with, so should convert well. Found what I think are a few bugs in the code. I'll try to compile a list and post'em in case they might be helpful.
  17. FYI. A working version of Space Trek by Jake Commander for the TRS-80 MC-10 (and VMC-10 Emulator) can be found at: http://faculty.cbu.ca/jgerrie/Home/jgames.html and https://github.com/jggames/trs80mc10/tree/master/quicktype/Arcade/SpaceGames Thanks all for the discussion of an interesting game and for the links to the program listing.
×
×
  • Create New...