Jump to content

madscijr

Members
  • Content Count

    29
  • Joined

  • Last visited

Posts posted by madscijr


  1. I've been playing with connecting Atari paddles to PC using a USB interface like this

     

    and find that the values on the PC side are "jumpy", 

    ie without moving the controller and just leaving it sitting there,

    and reading the value on the PC, the value fluctuates.

    Not wildly but enough to make my game spastic. 

    This problem happens with working paddles that have been cleaned and are not "jittery" on a real Atari, 

    and it happens with various brand new 1M Ohm linear potentiometers (which also work fine with a real Atari). 

     

    After some googling I came across a discussion where they discuss this problem

    and talk about adding a capacitor to "smooth out" the signal:

    reading a potentiometer ? (avrfreaks.net)

    Quote

     

    Also, you may wish to put a 0.1 uF cap from the junction of the fixed resistor and your 2 wire device to ground.

    Some pots are scratchy, with intermittant ro noisy contact, and this will help smooth out the signal.

    You may wish to average several readings for your real application, once you have it working.

     

     

    I have seen a capacitor used with a guitar tone control potentiometer.

     

    Would adding a capacitor between pin 7 (+5v) and pin 5 (paddle A), and another one between pin 7 and pin 9 (paddle B), be the way to do this? 

     

    Would it work to smooth out the signal or would it no longer be readable by the Atari? 

     

    Before I open up my paddle and soldering iron, I thought it might be prudent to ask the experts.

     

    Any feedback appreciated... 


     

     

     

     


  2. Thanks everyone for your replies. After more searching, I found one which seems to work pretty well, it has a "d" shaft whichis pretty long and is linear taper.  

    Here is the part number and a link in case it helps anyone:

     

    Philmore PC28 1 Meg Ohm Linear Taper Solder Lug Terminal Potentiometer, 24mm Body with 1/4" D Shaft.
    https://marvac.com/products/philmore-pc28-1-meg-ohm-linear-taper-solder-lug-terminal-potentiometer-24mm-body-with-1-4-d-shaft
     

     


  3. I know the Atari paddles are 1M Ohm, linear taper, but searching on mouser, jameco and digikey brings up a ton of choices. 

    Has anyone replaced these in their paddles recently that could recommend an exact part number or the mm size, or other specs that I should be looking for & could filter on? 

    Also, I need a good fire button switch, the standard red classic arcade joystick button, has anyone found any good quality ones at a good price? 

    Any recommendations welcome. 


  4. 17 hours ago, gliptitude said:

    A few years ago I convinced an Atariage member to convert a Pong console to be 2600 paddles. Works okay and is a cool novelty. Still plays the pong games too. 

    That's pretty cool, so the Pong home console paddles use the same 1MOhm potentiometers as the VCS paddles? 


  5. On 12/26/2016 at 1:04 AM, Rhindle the Dragon said:

    Has anyone ever come up with an alternative to the crappy potentiometer-based paddle controllers?

    I know they sell reproductions, but if I'm thinking right, they will also suffer from jitters after a while since they are based on the same mechanism.

    It seems like a super-easy problem to fix. Maybe modify a rotary encoder somehow?

    Somebody look into this!

    In case anyone finds this looking for another solution to this, 

    we discussed using a USB optical mouse as a paddle substitute here

     

    The mouse would plug into a Raspberry Pi or Arduino, which would keep track of the position and use it to control the resistance using pulse wave modulation (PWM). 

    I haven't tried it yet but I'll get around to it! 


  6. Just to update people in case anyone else is interested in writing Atari type games on a modern PC, that I have been playing with QB64 and created a couple simple practice games without too much trouble. They run fast, and it's BASIC, so for anyone who grew up with that language like I did, it's not too hard to pick up. 

    I plan to try my hand at FreeBasic next. 

     


  7. In case it helps anyone, I found another implementation for the TRS-80 MC-10

    Some videos of it running: 

    Atari Adventure in BASIC: Alpha Version - YouTube

    Atari Adventure in BASIC: Lucky Chalice Placement and Easy Win! - YouTube

    Atari Adventure In BASIC Spelling Fix - YouTube

     

    Try it in this online MC-10 Javascript Emulator  (choose ADVNTR from dropdown and type RUN <ENTER>).
     

    Here's the page with a link to the downloadable sound file of the program on cassette(!) and a link to it emulated online:

    Type-in Mania: Programming in BASIC on the TRS-80 MC-10: RetroChallenge 2018/09: Atari Adventure in BASIC Beta Release

     

    More info: Atari Adventure in Basic Lost Sword

     

    There is a download link here for the game and the emulator it runs in:

    Jim Gerrie's TRS-80 MC-10 Games by JimGerrie - Play Online - Game Jolt

     

    I was looking for a utility to convert the program listing on the cassette image to a plain text file, maybe it's in this MC-10 archive (has the emulator and more stuff):

    TRS-80 Color Computer Archive - MC-10
     

    A thread about the MC-10 here on atariage: Remember the TRS-80 MC-10? - Tandy Computers - AtariAge Forums

     


  8. 2 hours ago, madscijr said:

    I might be interested in a option for a scrolling playfield, rather than the flip screen

    Thinking about it, the flip screen version would be fine, but the screen would still need to be redrawn pretty quickly when you move to a new one. On the C64 at least, this would mean reading the new screen data (the whole world would be loaded somewhere in high memory where it won't be overwritten by BASIC) and copying the visible portion to the screen, which would be slow without a ML routine of some sort. I'm not sure what BASIC extensions might have features that would do this quickly, otherwise it would mean writing some assembly or hoping the compiled program runs fast enough so you don't have to wait too long for the screen to be drawn.


  9. Thanks everyone for your replies!

     

      

    On 11/23/2020 at 2:23 PM, zzip said:

    I'm pretty sure I have a version of Adventure written in BASIC for the Atari 8-bit.   I've never tried to modify it though.

    Oooh, any chance you might be persuaded to share the code? I promise you it would not be used for monetary gain :-D 

     

    On 11/23/2020 at 1:38 PM, Preppie said:

    Never tried it but it would be simple enough to do especially if you used FastBasic.

    I'm new to Atari 8-bit and hadn't heard of FastBasic - I looked it up and it is intriguing. Simple, easy, and fast are good attributes for a development language here! 

     

    On 11/23/2020 at 1:19 PM, R.Cade said:

    I wrote one for the VIC-20 when I got one back in 1983, but unfortunately it's lost. It was pretty easy to do with PETSCII character graphics, and being so simple I didn't need a lot of knowledge of game design at all.

     

    I remember getting pretty far into the development of it, never 100% completed though, like all my projects. :)

    My condolences, I'm sure 37 years has removed the sting, but I know the pain of losing one's work. 

    PETSCII graphics can definitely reproduce the look of the backgrounds, but the player, dragons, objects, etc. would need to be sprites, to recreate the smooth motion of the Atari VCS version. I know it's not exactly the most advanced game, but I would like the look and feel to be as true to the original as possible. 

     

    PS However, I might be interested in a option for a scrolling playfield, rather than the flip screen of the original. Maybe even a split screen game where 2 players can interact in the same world. The thing I wouldn't know how to do would be smooth scrolling of character-based (ie tile) graphics, in a window (the top half for player 1, the bottom half for player 2, or maybe right/left, or maybe 2x2 for 4-player split screen, and maybe a non-scrolling area at the top or bottom displaying score, and other attributes). That kind of thing sounds like it would need interrupts and machine language - stuff that is a little daunting, a little too much work - at least on a C64 which I am most familiar with. Maybe the Atari 8-bits have flavors of BASIC that can do that kind of thing easily and quickly? The scrolling is just a nice to have though, I just thought I'd throw that idea out there. If there is no easy way to accomplish it, forget I mentioned it! 

     

    PPS I think my main idea and desire would be to create an EASILY modifiable Adventure game / engine. Kind of an "Atari 2600 Adventure Construction Set". 

     

    Thanks again everyone


  10. Just wondering - the technology used for Adventure was simple enough that just about any 8-bit home computer or newer should be capable of emulating it. 

    I'm wondering if anyone has done it in BASIC (maybe compiled, or with some minor ML routines, or using some BASIC expansion library, for more speed etc.) ? 

    It would be cool to have such a code base to work with, making it easy to modify and create custom adventures... 

     


  11. A long time ago I got me an Atari Video Music (HAD to have one after seeing it in "Over the Edge"!) - it worked pretty well, but took up a lot of space and I wasn't going to be able to justify maintaining ANOTHER ancient device, and ended up selling the thing in a time of need. 

     

    From time to time I wonder how we might make an add-on for the Atari VCS (serving as inputs from your stereo) to turn it into an honest-to-goodness Video Music console? 

     

    Many moons ago, some friends threw a party and hooked up a line out from the stereo to an old cathode ray TV to make a primative music visualizer like this and this, affectionately named "herbert". 

     

    I wonder how an audio signal might be converted to some kind of paddle input on the Atari?

    We might have the left and right audio channels being read as paddles 1-2, while paddles 3-4 provide knobs for input, and a bunch of digital inputs from paddle buttons 1-4, the difficulty, b/w - color, game select, and reset switches, to match the controls of the video music. (The gain controls would probably just be physical potentiometers built into the audio input adapter.)

     

    How could this be done? Thoughts? 

     

    • Like 1

  12.  

      

    Quote

    In short, we use multiplexers and the select line is D7 on VBLANK.


    Thanks. From look at Joystick multiplexer help, I get the gyst of why multiplexing, although the details are way beyond me (I don't know electronics and assembly language makes my head spin). 

     

    How is the QuadTari going to be made available - for sale off your site / ebay / etc. (how limited?), an open-source instructable type project, etc.? 

     

    Is this kind of thing made any easier to build DIY using something like an Arduino or Pi? 

     

    Thanks again


  13. That will be very helpful to see your Berzerk 2000 R2 code. 

     

    Here is a question - can the SuperCharger BASIC handle input from a 4-controller adapter, such as described here? 

    These should work by simply "converting" the on/off signals from 4 or more joysticks to specific paddle and joystick values that just need to be interpreted correctly in the program.

     

     


  14. 3 hours ago, Mr SQL said:

    Awesome Berzerk port ideas @madscijr

     

    You may be able to create Berzerk games like this for the Atari 2600 using the new SuperCharger BASIC

     

    Here is an unreleased port of Berzerk 2000 R2 that may inspire you or someone else to turn some of your ideas into Atari games:

    ...

    Have fun! 

     

    Thanks... As long as it makes it easy, that increases the chances I would find time to create something 

    (not a lot of free time to devote to this stuff, and learning how to program assembly games for the Atari is high on difficulty & time drain and low on the priority list! Lol)

     

    The Berzerk 2000 R2 video looks pretty decent, the motion and scrolling is smooth. The music is a little annoying but it's neat that it can handle simultaneous music.  It would be even better if they posted the source code! :-D

     

    The other games are glitchy as hell and pretty bad, though. Whoever makes the SuperCharger BASIC needs to simply remake some well known Atari VCS titles (or demos of elements thereof) and post the source code, which will get people started. 

     

    • Like 1

  15. Some ideas for games I'll never get around to programming myself, but which would be awfully fun to play, that someone ought to make, so I might as well put the ideas out there...

     

    I have been dreaming up 4 and more player games since the 8-bit days. Not network games, but the heat of competition and the fun of playing with your friends right there next to you, crowded around the TV.

     

    Back in the day I designed a 4-joystick adapter for the C64 on paper. I never got around to making it, but recently saw this QuadraStik Adapter for the 2600, which may or may not actually exist. UPDATE: Nathan from the site wrote back and said they are getting close!

     

    Seeing that fired up the old dream, and inspired me to mock up some games I've always wanted to see. These aren't terribly original, just mashing up various elements from some old favorites.

     

    Some of these might exceed the limitations of the 2600 (in that case, how about for a computer like the Atari 800 which has 4 joystick ports out of the box?) but with emulators and modern technology I have heard about 16k or 32k cartridges, Arduino powered circuits, etc., anything's possible.

     

    Anyway here are some that might be fun to make... enjoy

     

    quadzerk_01_pacman_2.png

     

    quadzerk_02_combat_2.png

     

    quadzerk_03_warlords_2.png

     

    quadzerk_04_berzerk_2.png

    • Like 3

  16. Can someone recommend a relatively simple, easy to learn & use, yet powerful enough to do what I want, imperative programming language like BASIC or Visual Basic, for making Atari VCS and 8-bit type games for the Windows desktop (or maybe Linux but prefer Windows)? 

     

    I would mainly be making 2-D games - stuff like Pong or Combat up to 8-bit Atari or Commodore era games, but probably nothing more complex. Maybe remake Pinball Construction Set or classic Ultima. 

     

    Some features that would help

    • relatively self contained (not 1,000,000 libraries you have to go through)
    • free or not too expensive (this would be just for fun)
    • easy to find lots of sample code for how to do things, and strong active community to ask questions
    • built in IDE (preferably a visual IDE)
    • and most importantly:
      • currently supported and should continue to keep working for some time
      • developed with a backwards-compatible philosophy so your programs will still work after a couple years!

     

    I have dabbled in various languages / systems over the years and made some games or partial games: 

    • Commodore 64 / BASIC - easy but games ran too slow, compiler helped speed games up, used some simple assembly for speeding up little routines (hard!)
    • Commodore 64 / Gamemaker - easy but too limited (plus I missed being able to type code)
    • Mac Classic / Pascal - limited to black & white graphics, couldn't find any info on making sounds (pre-Web so it was very hard to find docs or examples)
    • Windows / QuickBasic - nice and easy but obsolete & couldn't figure out anything past text graphics and simple beeps
    • Windows / VB6 - I liked the language and IDE but limited graphics support (bitblt, kind of confusing), and I never figured out playing >1 sounds at a time, just playing back WAV files one at a time; eventually VB6 became obsolete so I had to start over
    • Windows / VB.NET 1.1 and some C# - the .NET language kept changing and got too complicated with the enterprise OO features
    • JavaScript / HTML5 - figured out canvas graphics, Javascript syntax is easy but I am not crazy about HTML and CSS, and parts of language were too complicated and ugly (prototype stuff, too many libraries & frameworks, no types, etc.)
    • Python / Pygame - mainly playing around with other people's code from pygame.org, still not comfortable with Python, not crazy about certain things like the indentation, no types, too many libraries / choices, dependencies and things changing too much that can break your code, etc. 

     

    After all these years and languages I still prefer BASIC or VB6 syntax (JavaScript/C syntax is OK, Pascal is OK) and a visual editor. 

     

    Mainly I don't have a ton of time to invest in learning stuff and if I get busy (which is often the case!), I might put a project down for months at a time, or even a couple years, and by the time I get back to it, the language I wrote it in has updated/changed or become totally obsolete, and I have to go back and fix my code or start over from scratch. I know computers change and all that but come on :-D

     

    So anyway, if anyone has any advice or recommendations that would be grand. And hey, if it doesn't exist, it doesn't exist, but I thought I would ask!

     

    PS here are some pages I was looking at, in no particular order - if anyone can share any opinions on these, please: 

     

    Much appreciated

    • Like 1

  17. Thank you everyone for all your input! 

    This discussion has gone way beyond my very limited understanding of electronics, I don’t mind hacking around with connecting a ps/2 mouse to Arduino (which there are instructions for) and programming it the read the input to control resistances, but getting into stuff like sending voltages into my Atari console scares me. My electronics knowledge & skills are more at the level of being able to following wiring diagrams to hook stuff together, but calculating current and voltages is a little beyond me, I’d probably end up frying my Atari (and myself)! 

    So even though wiring up a bunch of resistors to switches or transistors for a rudimentary digital potentiometer is not a very elegant or efficient way to solve the problem, I probably would be less likely to blow something up with this method than messing around with sending voltage via pwm and having to mess with capacitors and diodes. I’m all for learning but know thy limitations may help avoid loss of time, equipment, life! Lamely yours, me


  18. 45 minutes ago, ChildOfCv said:

    Just as a note, the RPi is 3.3V-based.  It may tolerate 5V inputs, but it won't have 5V outputs.  So I would suggest something from the Atmel or PIC line that runs on 5V.  I know they make chips that have direct USB support (Arduino Uno actually has 2 Atmega chips, one that has integrated USB and runs the bootloader, and the main one).

     

    As for what the Atari can power, pin 7 is connected directly into the 5V rail.  There are some voltage spike issues to solve, where 74xx chips can cause static on the screen.  But this application necessarily limits power output and might be exempt from that issue.

     

    Thanks for all that info.

    BTW, the input device doesn’t have to be an optical mouse - you could use an ultrasonic Ping range sensor, or a photoresistor, or Theramin-like antenna to get analog input. The range sensor appeals to me because you could set it up to make a pong paddle follow your hand movement. 

     

    Of course, you can just play on the Stella emulator on PC and the mouse controls the paddle. But what about 4 player games? Have they got Stella working with multiple mice? I know Windows has this raw input API to read multiple mice and keyboards. It would be awesome to make a pong/breakout/video olympics/pinball type construction set, the number of players limited only by the number of people, mice, and USB ports... 


  19. 28 minutes ago, ChildOfCv said:

    You'd need pins 7 and 8 to power your microcontroller.  But otherwise, yeah use the PWM output from the controller to charge the Atari's capacitor.  You can reduce the "low" time of the pulse rather than increasing the "high" time in order to provide a timing curve that approximates the paddle's potentiometer.

     

    That sounds nice and easy, and I like that the whole thing would be powered by the console. Would the Atari’s one 5v paddle pin supply enough juice to drive an Arduino or Pi (or 2, if one can’t simultaneously read 2 mice) and up to 2 optical mice? 

    I was expecting the controller to need its own power source. 

     

    Which uC do we want? The Arduino Uno has up to 6 pwm outputs, and I read the Pi has 1 (I recall reading something like it technically has 2 but only one is user programmable?) If the controller can distinguish & read two usb or ps/2 mice plugged into it, and can drive 2 pwm outputs, then you only need one controller per pair of paddles (1 uC per port). Else you need 1 controller per paddle (2 per port). 

     


  20. 59 minutes ago, alex_79 said:

    Those adapters only change the shape of the connector, but they do not contain any electronics. They only work with mice that are dual standard (that can use both usb and PS/2 protocol). Those were common a few years ago, but I think most new mice are usb only, and the adapter is useless in that case.

     

    That's good to know. But no matter, they're still easy to find and dirt cheap, on ebay or any goodwill store (PS/2 optical or older USB optical that work with PS/2 adapters).

    And Raspberry Pi has USB inputs and can do PWM, if you don't want to go the PS/2 route. 


  21. 2 hours ago, ChildOfCv said:

    That seems more complicated than it needs to be.  The TIA reads the paddle controls by discharging the capacitor on the input and then letting the paddle recharge it through a variable resistor and timing how long it takes to reach the threshold.  You can fit into this by putting a diode and a suitably large resistor (maybe start with 10K) on a PWM output.  The lower the mouse reading, the longer the pulse width.  This will vary the capacitor's charging time in the same way that the paddle would.

     

    Hmm... So would you attach the PWM output directly to pin 9 (for 5 for the other paddle) and leave pin 7 (+5v) disconnected? 

     

    Pin    Atari VCS
    1      Up
    2      Down
    3      Left
    4      Right
    5      Paddle B
    6      Button
    7      VCC (+5 V)
    8      GND
    9      Paddle A
     


  22. Has anyone tried making one? 

    It would probably involve some kind of hardware interface to accept audio input (maybe the audio signal could be "translated" to paddle input?)

    and there would need to be some way to emulate the knobs and buttons. Maybe something like:

    PORT #1 = paddle controllers, where  

    paddle #1 = audio signal input (would have to be mono)

    paddle #2 = knob control, pressing the button changes which parameter the knob controls

    PORT #2 = keyboard controller

    (12 buttons available)

     

    or

    PORT #1 = paddle controllers, where

    paddle #1 = left audio signal input (during play mode), input knob (during settings mode)

    paddle #2 = right audio signal input (during play mode), input knob (during settings mode)

     

    PORT #2 = keyboard controller

    (12 buttons, one of them switches between play and settings mode)

     

     

    The audio signal to paddle adapter would have to be a simple circuit that is easy for people to find parts for and build. 

     

    Anyway, I just thought I would ask if anyone has done this and put the idea out there...

     

    Seems like it would be fun. 

     

    PS Here is what wikipedia says the controls were: 

    The knob controls are as follows:[6]:66–67

    • Gain: Two knobs controlling the left and right audio input signals strength. These increase the size of the visual pattern.
    • Color: One knob controlling color. This increases the number of available colors from a solid color to a rainbow of colors.
    • Contour: Two knobs controlling the left and right audio input signals visual representations shapes from soft to geometric. These act to soften shapes or increase geometric complexity of the design.

    The push button controls are as follows:[6]:67

    • Power: Turns unit on and off.
    • Shape (solid): Any Shape or Image that is displayed will be solid
    • Shape (hole): One stereo channel controls the outside with a hole in the center controlled by the other stereo channel.
    • Shape (ring): Both stereo channels will represent two outline shapes that retain their thickness with the pulse of the music
    • Shape (auto): The system automatically cycles at random between the different Shape settings as well as the next eight buttons:
    • Horizontal 1: Displays one generated image.
    • Horizontal 2: Displays two horizontal generated images
    • Horizontal 4: Displays four horizontal generated images
    • Horizontal 5: Displays five horizontal generated images
    • Vertical 1: Displays one generated image
    • Vertical 2: Displays two vertical generated images
    • Vertical 4: Displays four vertical generated images
    • Vertical 8: Displays eight vertical generated images

     

×
×
  • Create New...