rocky007 Posted July 21, 2010 Share Posted July 21, 2010 I'm interested in reading a analog signal from. Is it possible through the cassette port ? Somebody also have idea how the Wico trackball use the joystick port ? Quote Link to comment Share on other sites More sharing options...
jchase1970 Posted July 21, 2010 Share Posted July 21, 2010 (edited) I think the cassette port output is just two tones high and low. Not analog. The wico track ball gives the same joystick inputs as a joystick which are -4 0 4 for both x and y. I think there us a rotary speed switch that let's you read the joystick return values only when the ball is spinning and at the rate the ball is spinning. In basic when you use the call joystick command it reads the return values so the switch has to be made to have a return value to read, otherwise it is a 0 value by default. Edited July 23, 2010 by jchase1970 Quote Link to comment Share on other sites More sharing options...
Mad Hatter Posted July 21, 2010 Share Posted July 21, 2010 Does your trackball have a sticker on the side with which says "TI"? If not then maybe it has peeled off. If it is a TI Wico trackball there should be a port for an A/C adapter on the side of the unit. If not, then it is not a TI version of the Wico trackball and will not be usable (even with a standard Wico joystick adapter). I guess you could try and rig your own power to it, but that isn't an easy solution. If you what you have is a TI trackball, then all you need to do is plug it into the joystick port and have the A/C adapter plugged into a socket and it should work fine. I'm interested in reading a analog signal from. Is it possible through the cassette port ? Somebody also have idea how the Wico trackball use the joystick port ? Quote Link to comment Share on other sites More sharing options...
Mad Hatter Posted July 21, 2010 Share Posted July 21, 2010 I think I may have misunderstood your question about the trackball. Nevertheless, there is an answer about HOW TO use the trackball with the TI. I'm interested in reading a analog signal from. Is it possible through the cassette port ? Somebody also have idea how the Wico trackball use the joystick port ? Quote Link to comment Share on other sites More sharing options...
rocky007 Posted July 22, 2010 Author Share Posted July 22, 2010 I think I may have misunderstood your question about the trackball. Nevertheless, there is an answer about HOW TO use the trackball with the TI. I'm interested in reading a analog signal from. Is it possible through the cassette port ? Somebody also have idea how the Wico trackball use the joystick port ? yes, in fact the real question is how to receive analog signal on TI... i'm thinking to software way for using Atari paddle. I read an internet page about TI joystick port modification, but i lost where i read it so, i'm thinking about little interface... Quote Link to comment Share on other sites More sharing options...
marc.hull Posted July 22, 2010 Share Posted July 22, 2010 I'm interested in reading a analog signal from. Is it possible through the cassette port ? Somebody also have idea how the Wico trackball use the joystick port ? Having taken my Wico track ball apart (imagine that) I have the skinny..... It actually reads the motion of the ball optically via two wheels with slots cut into them and sends the data out through A/D converters. The issue I have with them is that you have no speed control as you would with software written for true analog trackballs. Kind of frustrating with games like centipede and barrage (for me anyway...) I think a true analog game port would be pretty cool but then you'd have to write games with them in mind (now who would do that . Perhaps the best way would be to create an Analog/digital converter that could send a scaled value to the RS232 port. That would eliminate console modifications. Anyway just my two cents.... Quote Link to comment Share on other sites More sharing options...
rocky007 Posted July 22, 2010 Author Share Posted July 22, 2010 I'm interested in reading a analog signal from. Is it possible through the cassette port ? Somebody also have idea how the Wico trackball use the joystick port ? Having taken my Wico track ball apart (imagine that) I have the skinny..... It actually reads the motion of the ball optically via two wheels with slots cut into them and sends the data out through A/D converters. The issue I have with them is that you have no speed control as you would with software written for true analog trackballs. Kind of frustrating with games like centipede and barrage (for me anyway...) I think a true analog game port would be pretty cool but then you'd have to write games with them in mind (now who would do that . Perhaps the best way would be to create an Analog/digital converter that could send a scaled value to the RS232 port. That would eliminate console modifications. Anyway just my two cents.... yes, it what i exepected as it's externally powered. i think wico trackball use the same technology than the "joytalk" : the signal is converted and bit converted into pulses through joyport. I'm to make little adapter converting a analog signal into 8 bit, and a special program in assembly scanning the joypad port to read & convert the 8 bit signal. By exemple if trackball send a signal value of 244, converted in binary : 11110100. The program have to code the "0" by "direction down" and the "1" by "direction up", and using start sequence signal "direction left". In final, the joypad sequence would be "LUUUUDUDD" (l= left, u=up, d=down). I thought through RS232, but everybody don't have RS232. I think a little adapter on original joyport is a better choice. Using this one, we can imagine special driver for Ti artist by exemple, and use a normal mouse on TI99. I thought also trough expension port : making a little adapter, with 2 analogic Atari compatible joypad port. Quote Link to comment Share on other sites More sharing options...
marc.hull Posted July 23, 2010 Share Posted July 23, 2010 I'm interested in reading a analog signal from. Is it possible through the cassette port ? Somebody also have idea how the Wico trackball use the joystick port ? Having taken my Wico track ball apart (imagine that) I have the skinny..... It actually reads the motion of the ball optically via two wheels with slots cut into them and sends the data out through A/D converters. The issue I have with them is that you have no speed control as you would with software written for true analog trackballs. Kind of frustrating with games like centipede and barrage (for me anyway...) I think a true analog game port would be pretty cool but then you'd have to write games with them in mind (now who would do that . Perhaps the best way would be to create an Analog/digital converter that could send a scaled value to the RS232 port. That would eliminate console modifications. Anyway just my two cents.... yes, it what i exepected as it's externally powered. i think wico trackball use the same technology than the "joytalk" : the signal is converted and bit converted into pulses through joyport. I'm to make little adapter converting a analog signal into 8 bit, and a special program in assembly scanning the joypad port to read & convert the 8 bit signal. By exemple if trackball send a signal value of 244, converted in binary : 11110100. The program have to code the "0" by "direction down" and the "1" by "direction up", and using start sequence signal "direction left". In final, the joypad sequence would be "LUUUUDUDD" (l= left, u=up, d=down). I thought through RS232, but everybody don't have RS232. I think a little adapter on original joyport is a better choice. Using this one, we can imagine special driver for Ti artist by exemple, and use a normal mouse on TI99. I thought also trough expension port : making a little adapter, with 2 analogic Atari compatible joypad port. I don't know anything about the A/D circuitry but if you looked at the 8 bits as a group of 4 2 bit packets then that would give you a range of 4 numbers (including zero) as a magnitude for each direction. Is this what you are doing ? Sorry I didn't follow the "LUUUUDUDD".... Quote Link to comment Share on other sites More sharing options...
rocky007 Posted July 23, 2010 Author Share Posted July 23, 2010 (edited) I'm interested in reading a analog signal from. Is it possible through the cassette port ? Somebody also have idea how the Wico trackball use the joystick port ? Having taken my Wico track ball apart (imagine that) I have the skinny..... It actually reads the motion of the ball optically via two wheels with slots cut into them and sends the data out through A/D converters. The issue I have with them is that you have no speed control as you would with software written for true analog trackballs. Kind of frustrating with games like centipede and barrage (for me anyway...) I think a true analog game port would be pretty cool but then you'd have to write games with them in mind (now who would do that . Perhaps the best way would be to create an Analog/digital converter that could send a scaled value to the RS232 port. That would eliminate console modifications. Anyway just my two cents.... yes, it what i exepected as it's externally powered. i think wico trackball use the same technology than the "joytalk" : the signal is converted and bit converted into pulses through joyport. I'm to make little adapter converting a analog signal into 8 bit, and a special program in assembly scanning the joypad port to read & convert the 8 bit signal. By exemple if trackball send a signal value of 244, converted in binary : 11110100. The program have to code the "0" by "direction down" and the "1" by "direction up", and using start sequence signal "direction left". In final, the joypad sequence would be "LUUUUDUDD" (l= left, u=up, d=down). I thought through RS232, but everybody don't have RS232. I think a little adapter on original joyport is a better choice. Using this one, we can imagine special driver for Ti artist by exemple, and use a normal mouse on TI99. I thought also trough expension port : making a little adapter, with 2 analogic Atari compatible joypad port. I don't know anything about the A/D circuitry but if you looked at the 8 bits as a group of 4 2 bit packets then that would give you a range of 4 numbers (including zero) as a magnitude for each direction. Is this what you are doing ? Sorry I didn't follow the "LUUUUDUDD".... if the magnitude is between -256 to 256, i just need 8 bit : i can code the 8 bit using 4 positions on original port : Up, down, Right, Left. By exemple to code 11110000, i can code it into up-up-up-up-down-down-down-down. For negative magnitude, i can use right / left. In basic, it's something like this ( not tested ), the scan start with detection of fire: 10 CALL KEY(0,K,S) 20 IF K=0 THEN 10 40 I=1 :: A$="" :: B$="" 50 CALL JOYST(1,x,y) 60 IF Y=0 AND X=0 THEN 50 70 IF X=-4 THEN A$=A$+"1" 80 IF X=4 THEN A$=A$+"0" 90 IF Y=4 THEN B$=B$+"1" 100 IF Y=-4 THEN B$=B$+"0" 110 I=I+1 :: IF I=8 THEN 120 ELSE 50 120 IF A$="" THEN PRINT "NEGATIVE ",B$ 130 IF B$="" THEN PRINT "POSITIVE ",A$ 140 GOTO 10 I think that in assembly, this routine could be enough fast to be transparent and return a value between -256 and 256 in realtime. Edited July 23, 2010 by rocky007 Quote Link to comment Share on other sites More sharing options...
jchase1970 Posted July 23, 2010 Share Posted July 23, 2010 (edited) I'm interested in reading a analog signal from. Is it possible through the cassette port ? Somebody also have idea how the Wico trackball use the joystick port ? Having taken my Wico track ball apart (imagine that) I have the skinny..... It actually reads the motion of the ball optically via two wheels with slots cut into them and sends the data out through A/D converters. The issue I have with them is that you have no speed control as you would with software written for true analog trackballs. Kind of frustrating with games like centipede and barrage (for me anyway...) I think a true analog game port would be pretty cool but then you'd have to write games with them in mind (now who would do that . Perhaps the best way would be to create an Analog/digital converter that could send a scaled value to the RS232 port. That would eliminate console modifications. Anyway just my two cents.... yes, it what i exepected as it's externally powered. i think wico trackball use the same technology than the "joytalk" : the signal is converted and bit converted into pulses through joyport. I'm to make little adapter converting a analog signal into 8 bit, and a special program in assembly scanning the joypad port to read & convert the 8 bit signal. By exemple if trackball send a signal value of 244, converted in binary : 11110100. The program have to code the "0" by "direction down" and the "1" by "direction up", and using start sequence signal "direction left". In final, the joypad sequence would be "LUUUUDUDD" (l= left, u=up, d=down). I thought through RS232, but everybody don't have RS232. I think a little adapter on original joyport is a better choice. Using this one, we can imagine special driver for Ti artist by exemple, and use a normal mouse on TI99. I thought also trough expension port : making a little adapter, with 2 analogic Atari compatible joypad port. I don't know anything about the A/D circuitry but if you looked at the 8 bits as a group of 4 2 bit packets then that would give you a range of 4 numbers (including zero) as a magnitude for each direction. Is this what you are doing ? Sorry I didn't follow the "LUUUUDUDD".... if the magnitude is between -256 to 256, i just need 8 bit : i can code the 8 bit using 4 positions on original port : Up, down, Right, Left. By exemple to code 11110000, i can code it into up-up-up-up-down-down-down-down. For negative magnitude, i can use right / left. In basic, it's something like this ( not tested ), the scan start with detection of fire: 10 CALL KEY(0,K,S) 20 IF K=0 THEN 10 40 I=1 :: A$="" :: B$="" 50 CALL JOYST(1,x,y) 60 IF Y=0 AND X=0 THEN 50 70 IF X=-4 THEN A$=A$+"1" 80 IF X=4 THEN A$=A$+"0" 90 IF Y=4 THEN B$=B$+"1" 100 IF Y=-4 THEN B$=B$+"0" 110 I=I+1 :: IF I=8 THEN 120 ELSE 50 120 IF A$="" THEN PRINT "NEGATIVE ",B$ 130 IF B$="" THEN PRINT "POSITIVE ",A$ 140 GOTO 10 I think that in assembly, this routine could be enough fast to be transparent and return a value between -256 and 256 in realtime. That's not giving a 8 bit return, You are sampling the joystick 8 times and setting each sample to 1 or 0, so 11110000 is 4 positive samples and 00001111 is 4 positive samples, bitwise it's 240 and 15 big difference. It might be all the range you need though if you use pos and neg, a range of 1 to 8 in both directions and 0 in the center. If I was going to try to do something like this I would do it this way, create an adapter that pulses faster or slower depending on the analog position of the paddle controller, easy enough. to keep it simple I'ld just pulse 0 to 255 times per given cycle, not sure what the time cycle would be with out doing some research on how fast repeated calls are to the joystick, It may need to be slowed even more, say 0 to 100 or something. this range (say 0 to 255) would return in program this 0-126 left, 127 center, 128-255 right Then in code to sample the return rate, a timed loop to read the joystick pulses. this is where some testing will have to come in play and why the range may have to be scaled down. You don't want to sample more then say 25 millisecs at a time that would be 40fps. So if you cant read 255 joystick readings in 25 ms you have to scale it back to what is possible in 25 ms, if it is 0-100 the range will be 0-49 left, 50 center, 51-100 right. You only need to pulse 1 joystick return value up, down , left or right. it would look something like this, not coded, just flow charted, 'paddle input 1 read joystick 2 if joystick X value 4, inc pulsevariable 3 inc loop counter 4 if loop counter less then 255, loop to 1 'analyze return 5 spinningspeed = 255-pulsevarible (this will return -128 to 128) 6 pulsevalue=0 'run the rest of the main loop and loop back to 1 Edited July 23, 2010 by jchase1970 Quote Link to comment Share on other sites More sharing options...
rocky007 Posted July 23, 2010 Author Share Posted July 23, 2010 I'm sampling joystick 8 times, A$ counting left & right pulses, B$ counting only up & right pulses In final, length of A$ or B$ would be 8 chars. A$ is positive, B$ is negative. In practice : To convert the number 149 ( in binary 10010101 ) The interface have to send to joystick port : left (1), right (0), right (0), left (1), right (0), left (1), right (0), left (1) The program analyse this "combo" sequence, and the result will be A$="10010101" If the number is -149, i take the absolute value in binary : 10010101 But as it's negative, the interface use up & down instead of left & right : up (1), down (0) , down (0), up (1), down (0), up (1), down (0), up (1) The program analyse this sequence, and result will be B$="10010101".. as it's B$, it's negative. In final, i need only 9 pulses ( 1 pulse to start sequence (fire), and 8 pulses for coding the 8 bits) Quote Link to comment Share on other sites More sharing options...
Tursi Posted July 24, 2010 Share Posted July 24, 2010 Me backing up threads again... the cassette port is single-bit I/O -- one bit for input, one bit for output. By toggling the output bit at different rates, you can create tones, but you aren't limited to the frequencies the console uses. Likewise for input, the console actually samples the input signal. However, it's completely digital and pretty heavily filtered. There are also two switches in there - the cassette motor pins allow the TI to conduct current for two cassette drives. It's not a true output because you also have to provide input current,and polarity matters, but they are a true digital switch (I used these long ago to turn things on for me ). As for the trackball -- I used to have a Wico trackball for the Atari, which worked fine on the TI through an Atari pinout adapter. It translated the rolling into pulses on the normal up/down/left/right lines -- ie: no special encoding at the jack, it just worked like a joystick. I guess those are becoming pretty rare. 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.