ballyalley Posted September 28, 2020 Share Posted September 28, 2020 Last week I went to visit @WhataKowinkydink. (Hey, does putting a "@" in front of someone's handle tag them and let them know that you're talking about them? If not, then how do I do it?). We played some TI games together. I brought my Atari-to-TI joystick adapter to his place and we discovered that the first button on joystick 1 doesn't work at all. Joystick 1 is a known-working Atari CX-40 (the standard Atari 2600 joystick). That joystick works just fine on an Atari 2600, Atari 8-bit computer and my PC for emulation using a Stelladapter USB joystick converter for my PC. Here are pictures of the front and back of my adapter: I didn't know the adapter was broken, as only have one cartridge: Munchman. This game doesn't use the fire button. Can anyone suggest what might be causing joystick #1's fire button to not function? I think converters use diodes; how can I check the adapter? I do have a multimeter, if that might help. Can anyone recommend an Extended BASIC game that would make it easy to test all the functions (four directions and fire button) of two Atari joysticks plugged into the adapter? Adam Quote Link to comment Share on other sites More sharing options...
WhataKowinkydink Posted September 28, 2020 Share Posted September 28, 2020 Alright, just dug up my little JOYTEST program: 10 CALL CLEAR 20 INPUT "JOYSTICK #?: " 30 CALL CLEAR 40 CALL SPRITE(#1,33,5,96,1,28) ## CALLS UP THE EXCLAMATION POINT TO BE THE SPRITE, CENTERED ON SCREEN 50 CALL JOYST(A,X,Y) 60 CALL KEY(A,K,S) 70 IF K=18 THEN CALL COLOR(#1,INT(RND*16)+1) ## IF THE FIRE BUTTON IS PRESSED, THE COLOR OF THE SPRITE CHANGES 80 CALL MOTION(#1,-Y,X) 90 GOTO 50 Not sure if can be of help with the adapter, but this program should give you something to be able to test the 5 functions of the joystick. 1 Quote Link to comment Share on other sites More sharing options...
Ed in SoDak Posted September 28, 2020 Share Posted September 28, 2020 Line 20 needs the variable that is set by INPUT. 20 INPUT "JOYSTICK #?" : A 2 Quote Link to comment Share on other sites More sharing options...
+arcadeshopper Posted September 28, 2020 Share Posted September 28, 2020 there's a good joystick test in the ti diagnostics cart .. if you have a finalgrom you can run that easily no bent pins in your adapter? I've had joysticks not make "enough" connection in my wico adapter that after some shoving/wiggling it makes better contact and works Quote Link to comment Share on other sites More sharing options...
ballyalley Posted September 29, 2020 Author Share Posted September 29, 2020 2 hours ago, arcadeshopper said: there's a good joystick test in the ti diagnostics cart .. if you have a finalgrom you can run that easily no bent pins in your adapter? I don't have the FinalGROM. I may get one after I get used to the TI. For now, I'm using it as a vanilla machine. I'll take a closer look at the adapter tomorrow, but I didn't notice any bent pins the other days. Nor dig wiggling the joysticks help. Adam Quote Link to comment Share on other sites More sharing options...
ballyalley Posted September 29, 2020 Author Share Posted September 29, 2020 3 hours ago, WhataKowinkydink said: Alright, just dug up my little JOYTEST program: Did you actually just type that in...? I used the Classic99 emulator and pasted the program into the emulator: 10 CALL CLEAR 20 INPUT "JOYSTICK #?" : A 30 CALL CLEAR 40 CALL SPRITE(#1,33,5,96,1,28) 50 CALL JOYST(A,X,Y) 60 CALL KEY(A,K,S) 70 IF K=18 THEN CALL COLOR(#1,INT(RND*16)+1) 80 CALL MOTION(#1,-Y,X) 90 GOTO 50 This worked okay. Here's a listing of the program: Here is the program running (before it crashes): Here is the program crashing: I'm a REAL newbie here. I just used the "disk drive" for the first time about five minutes ago. I've attached the TI-99/4a disk image to this post (at least I think I did): JOYSTICK.DSK The disk image is 180K. Does that seem right? The program on the disk is called JOYSTICK. You're all used to this stuff, but (as a reminder to myself), here's how I saved it: SAVE DSK1.JOYSTICK Then I loaded it back with: OLD DSK1.JOYSTICK Can someone check what's wrong with this Extended BASIC program? Also, how do I check the directory on a disk from Extended BASIC? It seems I can't... but can that be right? Adam P.S. I've noticed that there are a TON of utility programs for file conversion for disks/WAVs and much more on the TI system. I really dig the community around this system. Quote Link to comment Share on other sites More sharing options...
Shift838 Posted September 29, 2020 Share Posted September 29, 2020 1 hour ago, ballyalley said: I don't have the FinalGROM. I may get one after I get used to the TI. For now, I'm using it as a vanilla machine. I'll take a closer look at the adapter tomorrow, but I didn't notice any bent pins the other days. Nor dig wiggling the joysticks help. Adam you could be a new one of new design from @arcadeshopper https://www.arcadeshopper.com/wp/store/#!/Joysticks-and-adapters/c/21773047 1 Quote Link to comment Share on other sites More sharing options...
Ed in SoDak Posted September 29, 2020 Share Posted September 29, 2020 (edited) In line 40, row velocity is specified as the 5th value, but column velocity is missing. Maybe add a 6th number for that? The manual for XB has the details. A good reference for when a program halts on a specific line with an error, look up that command and check the syntax and values are correct. A pdf copy can be found in the reference topic sticky in the Development subforum (and elsewhere). https://atariage.com/forums/topic/153704-ti-994a-development-resources/ When you save a file to a DSK image, it's always a full-size image in the format used (DSSD for 180K), even with only one small file in it, or even empty, for that matter! The other "standard," FIAD (Files In A Directory, usually just a folder on the PC's hard drive) are kept as individual files. Classic99 prefers its content in FIAD format, but it works pretty well with DSK images, thanks to author Tursi actively supporting the program. DSK images images are "full" when you hit 180K, but a FIAD folder can just be added to on the fly till you hit TI's internal limit for individual files on a disk (127, I think). Some versions of XB have a cat command built in, such as the Super Extended BASIC cart that I use has CALL CAT. TI's Extended BASIC cart does not have this ability built-in, unfortunately. Otherwise, there are numerous XB programs written to simply list a disk, and possibly also view text files or RUN programs picked from the listing the program creates. If you already have a program in memory, you need to save it first before running a separate disk cataloging program. A simple one is given in the XB manual you can type in. John Johnson's BOOT program (with its XB loader added) is an excellent example of a full-featured cataloger/loader/viewer. If you name an XB program as LOAD, it will autoRUN when you select XB from the TI's main menu. I choose my favorite XB loader as LOAD on most all my disks. Or use one of many disk utility programs, or TI's Disk Manager II cartridge to look at and maintain your disk collection. Now, in emulation on the PC, you of course have more options. TIdir is one utility you can run alongside Classic99 to look inside DSK images or FIAD folders, copy and move things, etc. FIAD folders can also just be opened in Windows since the files are all separate to begin with. And Classic99 will let you explore contents when you navigate to a new DSK or FIAD. -Ed Edited September 29, 2020 by Ed in SoDak Quote Link to comment Share on other sites More sharing options...
WhataKowinkydink Posted September 29, 2020 Share Posted September 29, 2020 12 hours ago, Ed in SoDak said: Line 20 needs the variable that is set by INPUT. 20 INPUT "JOYSTICK #?" : A Correct. That was totally what I meant Quote Link to comment Share on other sites More sharing options...
ballyalley Posted September 29, 2020 Author Share Posted September 29, 2020 Thanks for all of the help everyone has given me here. I'm going to meet with "WhataKowinkydink" again this evening. Maybe we can figure some of this out together. Adam 1 Quote Link to comment Share on other sites More sharing options...
ballyalley Posted September 29, 2020 Author Share Posted September 29, 2020 11 hours ago, Ed in SoDak said: In line 40, row velocity is specified as the 5th value [...] When you save a file to a DSK image [...] Thanks, Ed. This post was very handy. I've printed it out for future reference. Adam Quote Link to comment Share on other sites More sharing options...
Tursi Posted September 29, 2020 Share Posted September 29, 2020 40 CALL SPRITE(#1,33,5,96,1,28) The comment says this is meant to center the sprite, so probably the "1,28" was meant to be "128" (with no comma). The velocity part of CALL SPRITE is optional, but if one is there, they both need to be - thus the SYNTAX ERROR. But I think you'll find with that one edit it will work as intended. 3 Quote Link to comment Share on other sites More sharing options...
WhataKowinkydink Posted September 30, 2020 Share Posted September 30, 2020 4 hours ago, Tursi said: The comment says this is meant to center the sprite, so probably the "1,28" was meant to be "128" (with no comma). Yep - so that was my fault, I introduced the typo So this is what it should read: 10 CALL CLEAR 20 INPUT "JOYSTICK #?: " 30 CALL CLEAR 40 CALL SPRITE(#1,33,5,96,128) ## CALLS UP THE EXCLAMATION POINT TO BE THE SPRITE, CENTERED ON SCREEN 50 CALL JOYST(A,X,Y) 60 CALL KEY(A,K,S) 70 IF K=18 THEN CALL COLOR(#1,INT(RND*16)+1) ## IF THE FIRE BUTTON IS PRESSED, THE COLOR OF THE SPRITE CHANGES 80 CALL MOTION(#1,-Y,X) 90 GOTO 50 Quote Link to comment Share on other sites More sharing options...
Ed in SoDak Posted September 30, 2020 Share Posted September 30, 2020 Except you still have to correct line 20 to add :A 2 Quote Link to comment Share on other sites More sharing options...
WhataKowinkydink Posted September 30, 2020 Share Posted September 30, 2020 4 hours ago, Ed in SoDak said: Except you still have to correct line 20 to add :A Urg.... can't believe I forgot that. Unfortunately it's too late to edit the entry So, for the record, line 20: 20 INPUT "JOYSTICK #?: ":A Quote Link to comment Share on other sites More sharing options...
ballyalley Posted September 30, 2020 Author Share Posted September 30, 2020 16 hours ago, Tursi said: The comment says this is meant to center the sprite, so probably the "1,28" was meant to be "128" (with no comma). Thanks for checking into the program's code. Last night, "WhataKowinkydink" and I found the error and it worked under emulation. He showed me some programs on his computer like TIimageTool and TI99Directory which were very helpful. I ordered myself a NanoPEB, which should prove very helpful and fun to use to load TI BASIC And Extended BASIC programs. Adam 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.