https://retrocomputing.stackexchange.com/questions/30698/how-were-the-70s-versions-of-pong-and-similar-games-implemented-without-a-progra Skip to main content Stack Exchange Network Stack Exchange network consists of 183 Q&A communities including Stack Overflow, the largest, most trusted online community for developers to learn, share their knowledge, and build their careers. Visit Stack Exchange [ ] Loading... 1. + Tour Start here for a quick overview of the site + Help Center Detailed answers to any questions you might have + Meta Discuss the workings and policies of this site + About Us Learn more about Stack Overflow the company, and our products 2. 3. current community + Retrocomputing help chat + Retrocomputing Meta your communities Sign up or log in to customize your list. more stack exchange communities company blog 4. 5. Log in 6. Sign up Retrocomputing 1. 1. Home 2. Questions 3. Tags 4. 5. Users 6. Jobs 7. Companies 8. Unanswered 2. Teams Now available on Stack Overflow for Teams! AI features where you work: search, IDE, and chat. Learn more Explore Teams 3. Teams 4. Ask questions, find answers and collaborate at work with Stack Overflow for Teams. Explore Teams Teams Q&A for work Connect and share knowledge within a single location that is structured and easy to search. Learn more about Teams How were the 70s versions of pong and similar games implemented without a programmable computer? Ask Question Asked yesterday Modified today Viewed 8k times 22 My Dad once commented "Back in the 70s - when Wozniak was working at Atari - they were building games using electronics - not programming computers." As a Computer Science graduate without an Electrical Engineering background, I was trying to wrap my head around how that was even possible. When we research the game systems of the 1970s we see: Dabney soon thought of a way to manipulate the video signal on the screen without a computer controlling it, and from there Syzygy Engineering came up with the idea of removing the computer altogether and building specialized hardware to handle everything for the game instead. In my head I can visualise electronic logic for binary adders, and running a square root operation on a number in a binary representation. But how do you represent the logic for 1970s game console pong or tennis? (Writing the software to do it seems comparatively easier to visualise.) My question is: How were the 70s versions of pong and similar games implemented without a programmable computer? * atari * pong * digital-logic Share Improve this question Follow asked yesterday hawkeye's user avatar hawkeyehawkeye 2,79722 gold badges1414 silver badges2525 bronze badges 6 * See also retrocomputing.stackexchange.com/q/11201/731 - TripeHound Commented yesterday * Is a question about something known to be not-a-computer suitable for a retrocomputing site? Build your own with TTL. - dave Commented yesterday * Here are some analyzed chemas of Pong games: reddit.com/r/ EngineeringPorn/comments/ul49zt/... pong-story.com/LAWN_TENNIS.pdf - pabouk - Ukraine stay strong Commented yesterday * 6 Check out this german guy who made an entirely electromechanical Pong using relays: niklasroy.com/pongmechanik/indexen.html There's a video at: archive.org/details/NiklasRoyPongmechanik - Crash Gordon Commented yesterday * 3 If you want a deeper dive into how even more complex game logic can be represented electromechanically, Technology Connections' series on the Aztec pinball machine is absolutely worth a watch: youtube.com/playlist?list=PLv0jwu7G_DFVAUoqtVxFVIu2oZc2GGyDf - Idran Commented yesterday | Show 1 more comment 6 Answers 6 Sorted by: Reset to default [Highest score (default) ] 48 They were made by mostly avoiding 'computing' concepts altogether, and treating it more like a mechanical thing. For example with Pong a major component is usually timers - every xth of a second the timer will emit a signal. You have timers calibrated to match the horizontal refresh of the screen, so they'll 'ring' at the same point on each scanline. Then you have timers calibrated to the vertical refresh, so they'll ring on the same scanline each frame. The ball is then just two discrete timers for vertical and horizontal position, and their rings are sent through an AND gate that will raise the voltage going to the display when both are ringing causing a white dot to appear. The paddles build on this concept with a medium length timer that can be started and stopped to define the length. To move the ball or paddles the timers can be advanced or delayed by a control signal. Or more accurately the timers are always paused at a certain point, like during half of the horizontal blanking period. This pausing is then shortened once to advance the timer (move left/ up) or increased once to delay it (move right/down). Since both the paddle and the ball timers are emitting a '1' when they are to be displayed you can impliment collision detection by performing another AND operation. So if both a paddle and the ball are being drawn at the same moment you know they've collided and can adjust a latch controlling the ball direction accordingly. If you get into the Atari 2600 you'll find that it's really weird compared to other consoles (sprites with no clearly defined X coordinate, instead only the ability to place it at the actual current location of the CRT beam or nudge it a small amount either way), but that it starts to make a lot of sense when you realize they were implementing their Pong logic for a programmable chip. Share Improve this answer Follow answered yesterday David's user avatar DavidDavid 3,24711 gold badge1414 silver badges2121 bronze badges 6 * So maybe an RC circuit could be used for this kind of thing. A potentiometer controls when the paddle starts being drawn, and then another resistor controls when the paddle stops being drawn. Fine. But what about the ball? It changes vertical and horizontal position, so the circuit would have to change resistance by itself. Can you explain how that could work? - Omar and Lorraine Commented yesterday * 5 @OmarandLorraine Well, that's simple. You supply a central "tick" to the logic that increments the counters for the x- and y- position. A reflection at the border is simply reversing the counting (count down instead of up) of the respective counter. Absolutely nothing to do with resistance. Everything is still digital, but in hardware instead of software. - tofro Commented yesterday * 3 The OP might find the first half of Steven Hugg's Designing Video Game Hardware in Verilog interesting. - Michael Graf Commented yesterday * 1 @tofro: Prior to the invention of Pong, the first home video game console had a ball whose horizontal and vertical position were represented by the voltages in capacitors. - supercat Commented yesterday * I think the 2600 was designed around Tank, a game somewhat later than Pong which is almost exactly like Combat Game #1 except for the presence of "X" shaped mines that are missing from the latter. Of particular note is the fact that Combat doesn't keep track of the horizontal positions of the players nor the missiles, but relies upon dedicated hardware to set the positions of the missiles to match the positions of the players. - supercat Commented yesterday | Show 1 more comment 12 Hardware and software are interchangeable To a point - you always need enough hardware to run software, but anything you can do in software, you can build a hardware replacement for. Albeit, it's usually a lot easier to build a Turing complete machine in hardware and do the rest in software. Now, I don't know how they implemented pong, but 20 years later, water utilities were still implementing pumping stations and treatment plants wholly using relays and contractors - none of this new-fangled electronics for them. I know because one of my designs was the first to use a PLC (aka a Turing machine) as the primary control mechanism for Sydney Water - it still had a complete redundant implementation in relay logic. It only took a few more years before the relays were phased out. Share Improve this answer Follow answered yesterday Dale M's user avatar Dale MDale M 22133 bronze badges New contributor Dale M is a new contributor to this site. Take care in asking for clarification, commenting, and answering. Check out our Code of Conduct. 2 * 1 ...and more than 50 years later, although there are sophisticated SCADA systems controlling pumping stations, treatment plants and the overall systems that they comprise, sometimes an individual pump or other piece of equipment will still have discrete relay logic controls for specific functions, especially interlocks for operator safety, damage prevention (e.g. temperature/vibration sensors, or sequencing (e.g. to prevent simultaneous starting of very large motors, or check valve positions). (Not every water/ wastewater system operator does this but some big ones in the U.S. certainly do.) - Theodore Commented yesterday * 4 A particularly complex (and arguably very interesting) example of this concept can be found in vintage electromechanical pinball machines. Each one of them is a huge mess of relays, switches, motors, and wires that implements all the required logic of that specific game of pinball entirely in hardware. Even some early solid-state pinball machines handled things this way instead of using microcontrollers. - Austin Hemmelgarn Commented yesterday Add a comment | 5 Based on CS background, if you know how logic gates work (or how an FPGA works instead of CPU), then that's how anything operates. It's just a bunch of logic gates doing their stuff. Even a CPU is nothing more than a bunch of logic gates, which are wired to implement the logic, whose task is to execute any program you give to it. So these games were just a bunch of logic gates, executing the logic of the game, sort of like running a fixed program but in a way that the program is not a separate entity but the hardware is just fixed to run the logic it needs to implement the game. So in same way that you can make an FPGA description to describe a CPU that can execute code, you can make an FPGA description to be a pinball machine, taking inputs from buttons and sensors and giving outputs to actuator solenoids and lamps, and the logic to increase score when you hit something etc. Of course such pinball machines were not made with digital logic gates but electromechanical gates such as relays. Later TV games were made with digital logic gates, either with separate stangard logic chips or custom ICs that implement the logic. Share Improve this answer Follow answered yesterday Justme's user avatar JustmeJustme 36.1k11 gold badge8484 silver badges164164 bronze badges 1 * Some video games--both arcade and home--used analog circuitry rather than just gates. The arcade machine Star Ship included analog circuitry to scale sprites and even draw circles (on a raster display!) - supercat Commented 55 mins ago Add a comment | 2 Not a direct answer, but you could think of Pong as the next evolution from pinball machines. TechnologyConnections has done a great series over the past year with a deep dive into the inner workings of a pinball machine that uses no (or very little) electronics, Pinball!. All the controls are eletromechanical. Share Improve this answer Follow edited yesterday Greenonline's user avatar Greenonline 4,47022 gold badges2222 silver badges6060 bronze badges answered yesterday Joe Fruchey's user avatar Joe FrucheyJoe Fruchey 12111 bronze badge New contributor Joe Fruchey is a new contributor to this site. Take care in asking for clarification, commenting, and answering. Check out our Code of Conduct. Add a comment | 2 OMG, if you haven't seen this yet - you are in for a treat! I am trembling with excitement, as I share this link: https://www.falstad.com/pong/ This is a full, working, online emulation of all the components of pong, including the sound. You can modify and tweak anything and see exactly how it works. I spent a lot of time just looking at those circuits work and marveling at human ingenuity. Share Improve this answer Follow answered 3 hours ago fdreger's user avatar fdregerfdreger 12122 bronze badges New contributor fdreger is a new contributor to this site. Take care in asking for clarification, commenting, and answering. Check out our Code of Conduct. Add a comment | 1 If you're a CS graduate, you'll know what a state machine is. (I really, really hope you do!) You'll be used to writing them in code, of course. There's a whole area of digital logic around building state machines out of flip-flops and basic logic gates though. Just like your code, each pass you check the conditions and (if met) transition to the next state. This is almost exactly how code (typically Verilog or VHDL) runs in FPGAs. I'm slightly worried about your course syllabus though, because in order to be confused about this, you have to have not been taught about FPGAs and likely other significant areas of processing such as GPUs. Those are fairly major areas of CS to be missing. The good news is that you're asking those questions now, so you can go and play with that kit now instead. :-) Share Improve this answer Follow answered 23 hours ago Graham's user avatar GrahamGraham 2,15299 silver badges1111 bronze badges Add a comment | You must log in to answer this question. Not the answer you're looking for? Browse other questions tagged * atari * pong * digital-logic . * The Overflow Blog * Community Products Roadmap Update, October 2024 * Meet the AI native developers who build software through prompt engineering * Featured on Meta * Preventing unauthorized automated access to the network * Upcoming initiatives on Stack Overflow and across the Stack Exchange network... Linked 9 When did various PONG systems overflow/crash due to points? Related 21 Were the custom chips in the Amiga exploited for their hardware bugs like the ones in the C64 and Atari 8 bit computers were? 5 Which early computer games supported "English" from the paddle controller? Hot Network Questions * Where do the Laws of Physics come from? * Simplified canvas builtin * Is it legal to record a busy public street, use facial recognition and then sell access to archived footage? * What was the name of an old D&D module involving a clockwork mansion & two rival mages? * Why does the partial transpose of an entangled state have at most one negative eigenvalue? * The keys were thrown down a well. | "....thrown /into/in/down into a well.?" * Calculate optimal game upgrades * Numbers with this property show up frequently * Triangulable versus trianguable * Can you prove polynomial irreducibility via substitution to a quadratic polynomial? * How to check if a font exists with pdflatex? * How could tusked dragons eat? * Why do fine-tooth blades smoke more than other blades when cutting thicker wood? * What is the relevance of mention of women in Jesus' Genealogy? * Who can still castle? * How were the 70s versions of pong and similar games implemented without a programmable computer? * Airport security confiscated umbrella * How to deal with mistakes or embarrassing moments in front of peers? * Is there any hermeneutical principle that would determine how much of Job's friends' speeches should be taken as divine instruction? * Is every connected subgroup of a Euclidean space closed? * What choice principles does "every set is in bijection with a transitive set" imply? * Are tyres truly the best upgrade for a bike? * Is it possible that SELECT query is blocking nodes synchronization in Always On? * Should I use the speaker's native language for single word exclamations? more hot questions Question feed Subscribe to RSS Question feed To subscribe to this RSS feed, copy and paste this URL into your RSS reader. [https://retrocomputi] * Retrocomputing * Tour * Help * Chat * Contact * Feedback Company * Stack Overflow * Teams * Advertising * Talent * About * Press * Legal * Privacy Policy * Terms of Service * Cookie Settings * Cookie Policy Stack Exchange Network * Technology * Culture & recreation * Life & arts * Science * Professional * Business * API * Data * Blog * Facebook * Twitter * LinkedIn * Instagram Site design / logo (c) 2024 Stack Exchange Inc; user contributions licensed under CC BY-SA . rev 2024.10.3.16276