Jump to content

johnnywc

+AtariAge Subscriber
  • Content Count

    2,596
  • Joined

  • Last visited

  • Days Won

    6

Posts posted by johnnywc


  1. 19 hours ago, ChildOfCv said:

    Yep, it's possible to power a chip without VCC.  Just don't expect it to be reliable :)

     

    With a pull-down resistor, I guess you could get away with a single-pole, dual throw switch.  Here's what I came up with for the select.

    254838203_ScreenShot2019-06-17at10_08_44PM.thumb.png.a65ad71b6e5975ef3a544f57d9df438a.png

    ATARI_SELECT_OR_BUTTON_2 is either your second button input or 4-stick select output.  ATARI_SELECT_1 is always 1 or 2 selector.  MULTIPLEXER_BUTTON_2 is the button 2 from the appropriately selected octal buffer.  And SELECT_1 through 4 select the appropriate octal buffer for output.

    Thanks so much - this is very helpful!  A picture is worth a thousand words. :)

    16 hours ago, Stephen Moss said:

    It should be possible, one thing you need to consider though it what happens when the user changes from a game that requires it to to input to that which requires it set to an output. Will the users try the switch in the other position when it does not work or just think it is broken and what i(if any) potential hardware damage that could occur when used with the switch in the wrong position.

    For the former perhaps put up a message to set the switch to the correct position, as for the latter I cannot quite visualise exactly how you intend this to work so I cannot suggest a solution at this point. 

     

    Unpowered logic devices can sometime draw power from their input pins, while enough inputs are high it will appear to function but when a enough go low (0V) it will stop working and so if left unpowered its correct operation could be random as the number of high/low input pins changes. So do not be fooled into thinking you can get away without connect both supply voltages. 

     

    A single pole double throw (SPDT) switch has three connections (usually in a row), the pole (common connection) is usually the centre pin and when the switch is in one position it is connect to the throw at one end of the row and when in the opposite position is connected to the throw at the other end. A double pole, double throw (DPDT) switch is two separate SPDT switches positioned side by side in a single unit and switched at the same time using a single actuator. 

    Thanks for the explanations!  Yeah, I was pretty sure *not* hooking up VCC was a bad thing, thanks for the confirmation! :)

     

    As for the switch to multi-purpose the 2nd select line; I agree it may not make sense in the end, but I appreciate the time to explain some of the pros and cons (and the design).  

     

    One thing I noticed in my tests today is the interference that Nathan saw with his original design.  It's a white line on the bottom of the screen that will show up only when you're pressing the joysticks in any direction while hooked up to the multiplexer.  I'm not sure what's causing it or even how to trouble shoot it.  I don't have a oscilloscope or anything to take measurements, but I do have a potentiometer though.  My next step while I wait for the other parts to come in (to test a 4 joystick version) will be to build the first circuit that was suggested that just used ground to select the joysticks.

     

    Thanks!

    John

     


  2. On 6/14/2019 at 6:00 PM, ChildOfCv said:

    Well I don't have a full design in mind, but the switch idea would work with the 2-line decoder.  What you would do, conceptually, is this:

     

    In one position, Atari pin for select (whatever you use) goes to the second line on the decoder.  In the other position, that pin is pulled low.  This allows you to use either 4 ports or 2.

     

    The switch would have 2 poles and 2 throws.  On the other pole, the outputs from the buffers for button 2 go to the Atari pin for 2-joystick mode.  Maybe through a small resistor in case both Atari and the switch box want to be outputs, so they don't fight too hard.

    Update:  I finally had a few hours and put the circuit together with 2 of the octal buffers with the resister packs on the inputs, 1 inverter using 1 select line and it worked like a charm! :)  I'm not seeing any interferencebut I'll need to test some more.  It does work with Genesis controllers without any issue (the 2nd button isn't even wired up so that makes sense).  One odd thing I noticed is that in my first tests everything worked, but after reviewing the circuit I realized I hadn't hooked up VCC to one of the octal buffers yet it seemed to work either with/without it.  I did have VCC hooked up to the DIR pin for A->B and the output enable line hooked up so maybe VCC got fed to the chip through one of those?  

     

    I ordered the decoders and will try to get 4 controllers/1 button working later this week.  In the meantime I'm going to get the 2nd button on the Genesis controller working.

     

    Assuming all that works, I'll look into the switch option for 2 joystick/2 button mode and 4 joystick/1 button mode.  I don't think I'm following your design completely, but once I get closer to that point I'll ask some more questions. :D I do understand the first part where you suggest wiring the switch to the 2nd line of the decoder (makes sense; in 2 joystick mode the 2nd line is always low, in 4 joystick mode it would be the value of the select line).  I get a little lost with "the switch would have 2 poles and 2 throws".... I'm not sure what that means lol.  Do you mean the switch is doing double-duty; one for the select line and one for the button 2 buffers?

     

    Thanks again for all the help!

    John

     

    • Like 1

  3. On 6/16/2019 at 1:20 AM, Fragmare said:

    Just tried the demo... this might be the most insane thing I've ever seen pulled off on the 2600!  😮

    And there's a lot of insane homebrew for ye olde VCS!  How did you manage so many sprites on a horizontal line?!  Even with flickering and the phosphor fade effect, it's still absolute madness!

     

    2 hours ago, Stephen said:

    Amazing game for sure.  It's using a significant "hardware accelerator" in the form of the Harmony cart.  Stock 2600 could obviously do nothing close to this.  I don't mean anything negative by this.  I'm buying a copy when available, and I have had a Harmony cart since it came out.

    Like Stephen says, we are using the ARM processor in the Harmony cart to do a lot of the data preparation for the 2600 kernels that draw the sprites and for game logic.  However, the 8 multi-color sprites on a line with no flicker has nothing to do with the ARM; this trick was done in Atari's Galaxian released back in 1983.  With the fast fetch mode of the CDFJ driver we do have more cycles to update more TIA sprites; we use this extra time to draw the stars and an extra missile to reduce flicker on the other objects.  The biggest advantage to me with ARM programming is the time that it saves me since I have developed a pretty robust sprite engine that I tweak for each game based on the requirements (playfield, multiple missiles, multi-color vs. single sprites, ).   The extra ROM and RAM allows us to add in all the eye candy and extra features that we wouldn't be able to squeeze in 8 or 16K.  I mentioned in another post that I believe a very good Galaga game could be made without the ARM using the technology from the 80's, but of course with the ARM the game can be much more polished and have more features, etc. :)   However, I don't think a decent Mappy, Scramble or Zoo Keeper could be done without the help of the ARM, mostly because of the scrolling which would take up most of the processing time.

     

    Hope that helps!

    John

     

    • Like 8
    • Thanks 1

  4. 7 minutes ago, Galactico said:
    Hi, why can not I get the download links?
    
    Thanks and regards

    Hello there!

     

    It looks like the attachments are temporarily unavailable during the forum upgrade, but the links should be fixed soon!  If they aren't corrected in the next couple days, I will re-upload the ROMs.

     

    Thanks!

    John

     

    • Like 1

  5. Hello!

     

    We all know now, that the game take advantage of the ARM-chip which is, for example, inside the Harmony cartridge. This ARM is a strong chip, but i guess, that letting GALAGA look as good as it is now, will not necessarily need such a strong chip? This chip is supported now, cause it is already there in the Harmony, which is widespread in the user-community, i suppose?

     

    But what really would interest me - how much of this ARM-chip-power the game really needs and would it also be possible, to bring such a game on a cartridge with a much weaker special-chip too? A chip which can just about manage it? For example, something like the SuperFX chip or SA-1 chip, which was used in the past in some SNES-game-cartridges? I mean, a special chip, customized to the Atari VCS-2600 of course, but which similar power like some of these classic SNES special-chips. Theoretically possible or not?

    Good questions!

     

    First off, I believe a pretty good Galaga port could be done with 16K and perhaps Atari's SuperChip which adds 128 bytes of memory (this was used in such games as Dig Dug, Crystal Castles, and Secret Quest). The Galaga kernel is basically an enhanced version of the Galaxian kernel that uses a combination of RESPx and NUSIZx (change object position and # of copies) to draw the enemies in formation, all with one sprite and no flicker, multi-color too. It should also be noted that the enemies in formation take 6 bytes of RAM to store (1 bit for each enemy). The extra RAM in the SARA chip would be used for storing the info on your ship, enemies in flight, reposition information for re-using sprites, missiles, etc. (you may even be able to get away without the SARA chip since Galaxian didn't use it either but it would be tough).

     

    With that said, of course having the ARM allows for a much more enhanced game to be developed. The original intention of the ARM (I believe) was to emulate the DPC chip found in Activision's Pitfall 2. Galaga uses the CDFJ driver which is an extension of the CDF, DPC+ and DPC drivers (in that order). One of the key features of these drivers is the ability to update a sprite in 5 cycles (the original DPC could do it in 7, and methods prior to that would be around 13 give or take a cycle). What this means is that more TIA registers can be updated per scanline, so Galaga updates both player sprites (multi-color if needed), the ball and both missiles. Those extra cycles also make it possible to overlay the text on the screen (if you notice, Galaga uses 208 scanlines for game play, with the score and status overlaying the playable area). The extra cycles also also me to repositioning sprites more often using 1 scanline, so sprite re-use is higher, therefore there is less flicker.

     

    Besides the kernel improvements, the ARM can also execute C code during Vertical blank (the time before the screen is drawn) and Overscan (the time *after* the screen is drawn). This is why I was able to port Galaga over in such a short time; I had the C code from my PC port of Galaga that I did back in 1997 (CHAMP Galagon) which I was able to reference, and in some cases just copy over (like the pattern data) with just a few changes (the PC games were written in VGA assuming a 256x200 playing area and the Atari play area is 144x208). Of course, the PC version of Galaga used much more ROM (400K) so squeezing all the game logic into 28K was no small task, plus I had the huge benefit of Nathan doing all the graphics and Ross doing all the sounds too! :D

     

    So, what does the ARM C code actually do? It can't talk directly to the Atari (that all needs to be done in 6507 assembler). Well, for me, in VBLANK (the time before the screen is drawn), it basically sets up all of the datastreams to be read by the kernels to display the graphics. It should be noted that there is not a lot of time to do this work; just clearing out the buffers that store the data to be drawn takes up most of VBLANK. In Overscan, I execute the C code that does all the movement and collision detection, plus play sounds (which is just TIA sounds).

     

    Anyway, I'm getting a little off base here, but to answer your question:

     

    how much of this ARM-chip-power the game really needs

    For the game to run as is, it is using as much as the ARM as it possibly can as almost all the cycles in VBLANK are being used. However, if the ARM was less powerful, I would most likely be able to keep the same features but would need to be more creative in using the ARM's resources. But, as I said above, I do believe a very good Galaga game could be written without the ARM, with the big losses being the eye-candy, probably the star field, and a bit more flicker. Also the overlaid score/status area would be pretty difficult so you would have a shorter play area.

     

    would it also be possible, to bring such a game on a cartridge with a much weaker special-chip too? A chip which can just about manage it? For example, something like the SuperFX chip or SA-1 chip, which was used in the past in some SNES-game-cartridges? I mean, a special chip, customized to the Atari VCS-2600 of course, but which similar power like some of these classic SNES special-chips. Theoretically possible or not?

    I'm not familiar with the SuperFX or SA-1 Chips, but in my opinion a good Galaga game could be made with a less powerful chip. If we were going back to something that would have been feasible in the 80's, if you had 32K ROM with extra RAM (SARA chip maybe, like Fatal Run), or perhaps a game with the DPC co-processor.

     

    Hope that helps!

    • Like 6
    • Thanks 1

  6. Well, I think he's trying to stick with the single port for joysticks setup though, so that port 2 can run the WOR sound module. But maybe I misunderstood. If you want to multiplex the 4 joysticks on port 1, then you'll need the decoder and 2 select lines. I guess one can be a pass-through from the WOR module though. I do have a dim recollection that you couldn't do a 4-way select from a single port due to some limitation...

    Nathan and I are debating about this; 4 joysticks with 2 buttons each using 2 ports or 4 joysticks/ 1 button 1 port. I have plans on making 4 player games that will need the AtariVox/Saveky functionality (specifically sports games) so I'm leaning towards 4 joysticks/1 button on 1 port.

     

    In a post above I had asked about the possibility of adding a switch that would toggle between 2 joystick/2 button and 4 joystick/1 button mode so the multi-tap could in theory support either (2 joystick/2 button would only use 1 select line, freeing up the other 6 pins for UDLR and 2 buttons while 4 joystick/1 button mode would use 2 select lines and the other 5 would be UDLR and 1 button). Of course that's all 'pie in the sky' thinking so I'm sure we'll land somewhere in the middle. I know it was discussed above, but concerning this new design, are there suggestions on how we could multi-purpose a pin from the Atari to be either an input (for button 2) or an output (select line) using a physical switch?

     

    Nathan's 4 joystick design is basically 2 separate 2 joystick designs, each connected to 1 port, but for some reason they were connected. Perhaps he is using 1 select line for both like Stephen recommends above.


  7. Stay Tuned... Rumor mill is that a new Hockey game is coming from Champ Games.

    Champ Games started a hockey game (CHAMPionship Hockey) back in 2003 but haven't worked on it since, but we are planning on finishing it using CDF at some point soon, hopefully next year!

     

    Here are some screen shots we posted on our Facebook page a while back.

     

    If it catches on and people are interested, we would consider making other Champ Sports titles such as Baseball, Football, Basketball, Soccer, Bowling, etc. :)

     

    • Like 7
    • Thanks 1

  8. Common is often a ground, but really it just means the connection to all the other components for the unit in question.

    Makes sense. So if I hook up VCC, is that what makes it a 'pull up' resistor, meaning it's pulling it up to high? Would connecting ground make it a pull down resistor?

     

    Each input pin from the joystick will connect to an input on the octal buffer, AND to a resistor in the pack. You can go back and refer to the image in the opening post to get an idea of what I mean.

    Got it now... I forgot Nathan had posted a pic before. That really clears things up!

     

    Fear not! Actually, that's the common way to hook up a constant input. You'll see many schematics where pins are tied directly to VCC or GND as appropriate.

    Awesome! I'm going to try to put this together this weekend and will post my findings here.

     

    Thanks!

    John


  9. I assume this is for the active version that chooses inputs by IC, rather than the diode version?

    Yes, the version (b) suggested by Stephen above with the octal buffer. :)

     

    VCC pin 7, GND pin 8. Correct.

    Yes, each input goes to a resistor in the pack. The common (I assume) goes to VCC for pull-up.

    Glad I asked, I would have incorrectly guessed common was ground. Man I'm really rusty with this stuff! ;)

     

    More precisely, connect the joystick inputs to the octal buffers, with one of each of the pull-up resistors on a buffer line.

    Hmmm, so you're saying that I connect the joystick inputs directly to the octal buffer? When you say a pull-up resistor on a buffer line, is that on the input or the output? :S

     

    If DIR is high, the direction is A->B. If low, the direction is B->A. Whichever is the convenient input side determines how you wire DIR.

    Great, thx. Silly question, but how do I get a high signal to DIR? Do I connect VCC directly? (or GND if I wanted to get low)? Those sound like dangerous ideas, is there another way to get high/low to that pin?

     

    For 2 joysticks, direct to one enable and inverted to the other will work.

    Great thx!

     

    If you want to do 4 joysticks, there's a decoder chip that will save you some design work. 74HC139 comes to mind. 2 address lines choose one of the 4 outputs.

    Awesome thx! I figured there was a specific chip that would be able to solve that issue instead of building it with logic gates. :)

     

    Thanks for the info!

    John


  10. A few random thoughts, after seeing a video Willie! (Arcade USA) posted the other day, and trying it via my Harmony cart just now... (and now my 7 year old is at it)

    • As usual, this is an incredible piece of work! Well done, all of you!
    Thanks!

     

    • I'm super jealous that there's still not a good Galaga-style game for the Atari 8-bit computers ;)

     

    That would be cool! (and the 5200 too!) My first bit of game programming was way back in 81 on an 800 using BASIC, maybe one day Champ Games will return to where it all started. :)

     

     

    • When I first got a 7800, back in the mid-1990s, I had very few 7800 games for it, and Atari's 1984 Galaga was one of them. I was so disappointed with it, I ended up selling the 7800 to a friend. (I was gifted another one ~15 years later, and it's now my 2600 game workhorse :) ) -- Suffice it to say, your 2600 version is way better. Perhaps we'll one day see a "proper" Prosystem version!?

     

    I think Atari did pretty well with 7800 Galaga for the time but with that said I never did play it much because it felt 'off'. Of course it didn't help that I first discovered it in the mid-90's right around the time I was starting my PC clone of Galaga (Galagon) so my expectations were a bit high.

     

     

     

    • My one niggle is that when I have dual-shot, I'm used to being able to hit two baddies next to each other, in their formation. (Based on my recollection of the arcade game, the (IMO) very good Nintendo NES port, and the PlayStation (original) version.) I wonder if the dual-shot bullets could be spread out a little, to account for the wider formation?

     

    Hmmm, I could spread out the double fire but I would need to also spread out the ships which IMO would look strange. Also, with the shorter screen vs the arcade I find that you can hit most of the enemies before they even get into formation so it would make the game way too easy.

     

    I played Galaga a lot as a kid, in my local Safeway grocery store. Years later, I'd go to a local "laser tag" place, and play the arcade games they had there. (Don't think I ever did do the laser tag. :) ) I frequented that place with a couple friends of mine to play Tekken 2 (before it came out for PlayStation). (Marianne was expert at reversals with Michelle Chang; Thea always stuck to Anna Williams; I focused my button-mashing on Marshall Law.)

     

    Anyway, I discovered that days where I totally sucked at Tekken, I was awesome at Galaga. And vice-versa. There must be totally different parts of my brain dedicated to fighters vs. shooters. ;)

     

    So... any thoughts on a Tekken port to the 2600? :D

    I don't think I've ever played Tekken (maybe on the Playstation?) I've never really been into fighting games so a 2600 port is probably best left in the hands of someone with fond memories of the game, as that is one of my requirements for porting games to the 2600. :)


  11. Hi Stephen,

     

    Sorry that was a memory error, you can use the 244 but half the inputs are on the left with the corresponding outputs on the right and the other half is going in the opposite direction which makes signal routing a bit of a pain if you need more than 4, which you will.

    I meant the 74HC245 as you can have all the inputs on one side and all the outputs on the other which makes the design much better for what you want to do. and as ChildOfCv has pointed out make sure you get a DIP/DIL version where the pins go down (through hole) and not out to the side (surface mount) as they are much easier to work with.

    Thanks for the clarification, I wouldn't have thought about the pin orientation until after I had started building the circuit lol.

     

    In regard to the SIL resistor pack the "Bussed, 101 circuit" version on the datasheet ChildOfCv linked to is the type you need.

    Great, I bought some of those too.

     

    Just so I don't blow anything up:

     

    - Sanity question: I get VCC (pin 7) and GND (pin 8 ) off of the Atari hookup, correct? :)

    - connect the joystick inputs to the resistor pack (up/down/left/right/button/ Genesis button)

    - connect the outputs of the resistor pack to an octal buffer. Looks like there is a DIR pin that controls the direction of the data (A->B or B->A). I assume this should be the same for both (meaning the direction should be the same for both). What do I connect to this pin?

    - Repeat for both joysticks

    - Connect the outputs of the 2 octal buffers in parallel to the output that is connecting to the Atari. right/up/down/button map to the standard pins, left maps to INPT1. Do I need anything (resistors, diodes, etc) between the octal buffers and the Atari pins?

    - select line is pin 3 from the Atari (left). How do I go about having it activate one octal buffer and not the other? Is it as simple as connecting the select line directly to one of the 245 OE pin (output enable) and passing the select line through an inverter before connecting it to the other one?

    - BONUS: If I wanted to extend the design to allow up to 4 joysticks connected using 2 select lines (let's say pin 2 and 3, right and left), I assume I would need some logic gates for the two select lines to output enable one of the octal buffers? Maybe use a 7408 AND gate in combination with a 7404 inverter to output enable one of the buffers on 00, 01, 10, or 11?

     

    Apologies for all the basic questions, I can promise I'm a fast learner though! :)

     

    Thanks,

    John


  12. Hello there!

    I just read now a moment ago, that the final-version will have a CO-OP mode for two players simultan on the screen. How great is this? SUPERB IDEA to integrate such a mode, i can imagine how much fun this will bring! :thumbsup:


    Yes, that is correct. We actually finished co-op mode and it is graciously being tested by a few people including James (& Tayna) over at Zero Page Homebrew and Glenn (aka GRay Defender) & his family. Both have reported that co-op is a lot of fun and will be a welcomed edition to the final version!

    We are also working on tweaking the CHALLENGE mode. In this special mode, you are only competing against CHALLENGE stages, earning and losing reserve ships based on your performance during each stage. The mode is fun & challenging in it's own right, but also a good way to practice the challenge stages for the real battle. ;)

    Have fun! :thumbsup:

    • Like 6
    • Thanks 1

  13. Yeah, SIP is typically what you want for resistor networks. As for type, you are probably thinking of "bussed" resistors. This datasheet shows some various styles for resistor packs.

     

    https://www.mouser.com/datasheet/2/54/600M-777112.pdf

     

    It appears that Mouser also has resistor networks in the "radial" form, which is the same as SIP. Probably just another manufacturer's classification of the same package. DIP may also be a viable option if you want more resistors than a typical SIP provides.

     

    Great, thx for the info, it's very helpful! So Stephen recommended a 4K7 resistor pack (or 5K1), so I think this one suits the need:

     

    https://www.mouser.com/ProductDetail/Bourns/4609M-101-472LF?qs=%2Fha2pyFadugOMSB5yBRKclNlQDagKDSXTScC2ZhFKwTAAF%2FHbRdHBQ%3D%3D

     

    It has 8 resistors which will be enough for 1 controller, so I'll need 2 for the circuit (1 for each since there are 5 maybe 6 inputs if we include the 2nd button).

     

    Thanks again!


  14. Yeah, the DIP-20 means it's a dual row, 20-pin chip. I'm pretty sure the pins on DIPs are all 0.1" pitch. There are/were SIP (single row) chips, just as an FYI for comparison.

     

    Great thanks for the confirmation!

    Any suggestions on a SIL resistor pack/network (not sure if those are the same) that I could use for the pull up resistors? I see SIP resistor packs (which they also call single-in-line which is confusing) so I'm not sure if they're the same.

  15. If you're hoping to use it on a breadboard, those SMTs will be a bit of a problem. You either need a surface mount to DIP conversion board, or you need to look for the through-hole (DIP) versions

     

    LOL I'm glad I asked! I'll look around for DIP version of the buffer. Thanks! :)

     

    I assume something like this would be okay? It says it's 'through hole' DIP-20 (I'm guessing '20' is the number of pins).

     

    PS I appreciate the help, especially with the basic stuff! I'm researching at the same time too so hopefully my questions will be a little more advanced soon!


  16. Hi Stephen,

    Thanks for all the info and suggestions! Nathan (aka gauauu) is going to try the diode solution. I figured I'd give the circuit a shot myself since he's making this multi-tap for my game (Wizard of Wor Arcade), so I've gone and ordered a bread board, resistors etc. to try to get back into hardware (it's been about 30 years since my EE lab class at UCONN lol).

    Anyway, if you don't mind, I'm looking on mouser.com and did a search on the 74HC244 for the octal line buffer (I was going to try solution (b) since Nathan's original design used a couple 2x1 MUX). I picked the first one in the list, does this seem to be appropriate for what we need?

     

    Also, you mention a 4K7 or 5K1 SIL resistor pack. I did a search on that but couldn't find anything; do you have any more specific information that may help me find what we need? EDIT: okay, I was able to find out what SIL means (single-in-line ;) and it's basically a bunch of resistors all using a common terminal. Very slick! Sounds like the best solution would be to maybe get 2 of these, one for each set of joystick inputs (5 inputs each)?

     

    Thanks in advance!

    John


  17. As long as we're nitpicking... (I use that word in jest, because it's really cool we can even talk about this level of detail!)

     

    Would I be correct in assuming the reason why the Galaga flagships always show scores when destroyed, even when worth only 150 points in formation...

    Hmmm, I'm pretty sure this is how it is in the arcade (it will show 150 in white if the flagship is destroyed in formation). If that's not correct, I'd be glad to fix it! :)

     

    ... and also the reason why you always hear the Galaga flagship "explosion" when a floating score is to be displayed, is because that's all running from the same block of code for the sake of squeezing this into the 2600's capabilities?

    Again, I'm pretty sure this is how the arcade is, but I may have misheard it while I was researching. There's certainly some ROM savings if I can run the same chunk of code for multiple situations, but to make small changes like this would cost about 4 - 8 bytes for the conditional check so no big deal.

     

    If you can provide specifics, I can put them on the to-do list to make sure they're included in the final release. :)

     

    Thanks for the feedback!

     

    John

    • Like 1

  18. It almost sounds like cold solder joints. If you have a soldering iron I suggest relowing the solder on the connector.

     

    As emerson stated try re-flowing the D-connector joints.

     

    Another possibility is that over the years either the plastic part of the controller connector that goes around the outside of the controller port D-connector or outside of P-plug has worn smooth and the joystick is just working loose a little as the cable moves during use, particularly if you are using it with the cable pulled close to its maximum extension.

    You could try anchoring the cable close to the 2600 under a heavy object or taping it down well to prevent the section between the anchor point and the 2600 moving and see in that solves the problem. If it does then an layer or two of tape around the outside of the controller port D-plug to create a tighter fit between it and the joystick will probably solve it.

    Thanks for the feedback! I have to be honest here, I'm not even sure what re-flowing solder even means; does it mean desoldering the connections and re-soldering them with new solder? Lol I wasn't kidding when I said I'm a software guy. ;) I'm sure I can do plenty of damage with a hot soldering gun too! :D

     

    I'll try the the tape/anchor solution first - that sounds much more up my alley :lol:

     

    Thanks again!

    John


  19. Hi Darryl,

     

    I did notice two things that *might* be possible adjustments.

     

    One the arcade and NES versions, I always wait to get my second ship until right before the first bonus round. Let's say the last shot is the one that retrieves your ship, the two ships will be centered perfectly for the first bonus round. The first bonus is easily cleared by rapidly firing the weapons. As the aliens approach, each gunner takes out a row of aliens. Each player gunner lines up perfectly with a row of descending enemies.

     

    On this version, either the aliens are too far apart, OR the players ships are too close together. They do not make contact with the aliens when they come out.

    We have been working on tweaking this as a few people have pointed out this 'trick' - I will look at making a few more adjustments to get it a bit closer to the arcade.

     

    Also, the blue aliens seem to swoop a little lower when they loop underneath the player.

    Good catch; this is an easy one to fix. :)

     

    As always, the star field, graphics, sound, and gameplay are top notch. The game play and patterns are much smoother than the 7800 version.

    Thanks so much for the kind words!

     

    John

    • Like 3

  20. Hello there!

     

    Does not work with the UNO cart on real hardware :(

     

    That is correct. I don't believe any of the ARM-based games (Scramble, Mappy, Super Cobra Arcade, Draconian, etc.) work with the UNO cart because it doesn't emulate the ARM (which is on the Harmony cart), but I believe I read somewhere that the developers are trying to upgrade the firmware on the UNO cart so that some day it might be able to run these games (I may be wrong here).


  21. Hello all,

     

    I have a 2600 4-switch that is giving me issues with the left controller port. Most of the time the joysticks work fine, but every so often the button will stop working and sometimes left stops working. It's definitely not a joystick issue as it happens on several different types. The issue always corrects itself when I push the controller connector more firmly into the port.

     

    It's obviously an issue with the connection between the controller and the pins in the port; my question (being a software guy ;)) is what is the best way to troubleshoot this and are there any suggestions on how to fix it?

     

    Any help is appreciated! There's nothing worse than being in the middle of an intense shootout in Galaga and all of a sudden your ship stops firing missiles! :D

     

    Thanks,

    John

     


  22. Thank you everyone for the kind words on Galaga, we're glad everyone is enjoying the demo! It looks like the NTSC and PAL60 demos have been downloaded almost 500 times in less than 2 days - pretty amazing! :)

     

    Awesome as usual John!

     

    I know this game uses CDFJ driver.

    But how did you achieve ennemies movement with very limited flickering?

     

    For example, in this screenshot ennemies move orizontally, the ship moves vertically and fires but there isn't any flickering!

    attachicon.gifpost-30-0-95807700-1558017183.png

     

    Thanks Philsan! The enemies in formation are all drawn using 1 sprite each frame; this is done using the same technique that was used for Atari's own Galaxian back in the 80's. The trick involves repositioning the sprite mid-scanline while changing the # of copies to display up to 8 sprites on the same line. You can actually do more, but we went with 8 so we could move the sprites left and right, plus we needed the extra cycles to draw everything else, including the enemy flying down (using the other player), the stars (using the ball) and up to 2 missiles (using the missiles) without flicker. Of course we re-use each of these sprites as we move down the screen to draw more stars, more missiles, other enemies in flight, your ship, the tractor beam, the score, status area, etc. all without flicker if they are vertically separated. :D

     

    I've never bought a Homebrew game for my systems before... so how long on average could/will it be before this makes it to a cartridge and or into a box? Just curious, as I will buy this as soon as there is a way for Champ Games to take my money... amazing.

     

    MrBlackCat

     

    Hello there! We are planning on a release in the fall of 2019 while we polish up the game and create the box/manual/label, etc. The release may coincide with the Portland Retro Gaming Expo, the weekend of October 20th, depending on whether Atari Age will be in attendance along with Champ Games. Stay tuned for more info and thanks in advance for your support, it is greatly appreciated! :D

     

    Wonder if you wanted some label art idea I drew some time ago but never used it.

     

    That looks really good! Dave Dries has already been commissioned to do the label/box/manual for Galaga, but I'm sure he's monitoring this thread and will appreciate your ideas. Thanks!

    • Like 3

  23. As promised, here are the demo ROMs for Galaga for the 2600 (both NTSC and PAL60).

    Note: If you plan on playing Galaga in Stella, the latest version with CDFJ is required (v6.0.1). Please visit the Stella website to download the latest version. A big thanks to Stephen and the Stella team for putting in the changes to support the game!

    The game will also work in Stellarator and on real hardware with the Harmony or Harmony Encore.

     

    This is a fully playable game with the following restrictions:

    - The CHALLENGE MODE skill level (where you try to clear as many challenge stages as possible) has been disabled
    - the CO-OP mode (2 players play together, each alternating control of a single ship or both controlling a ship when rescued) has been disabled
    - Savekey functionality has been disabled, but high scores are still maintained for each skill level during play until the game is turned off
    - The game loops back to Level 1 after Level 8 is complete.

    GAME OPTIONS

    From the title screen, you can select the # of players and SKILL level.

    Press SELECT to toggle between 1 and 2 players. For 2 players, each player alternates after the current player's ship is destroyed.

    Move the joystick left/right to change the SKILL level:

    • NOVICE: Player starts with double-ship, 3 reserves. Difficulty ramp up is slower
    • STANDARD: Most like the arcade. Player starts with single ship, 3 reserves
    • ADVANCED: More difficult than STANDARD. Player starts with 1 ship and 2 in reserve. Enemies move faster, enemy missiles are faster, enemies take off more frequently, extra ships are added during the fly-in sequence, etc.

    Move the joystick up/down to cycle through the 4 menu screens. If you do not move the joystick or start a game, the screens will cycle through after a certain amount of time.

    • Title screen
    • Scoring screen
    • Hi scores. You can also press left/right to swap between the 3 high score tables on this screen.
    • Credits

    DIFFICULTY SWITCHES

    The left and right difficulty switches control the firing mode for Player 1 and Player 2, respectively:

    • When the difficulty switch is in the B position, Auto-fire is enabled. With auto-fire, you do not have to press and release the button to fire multiple shots.
    • When the difficulty switch is in the A position, Auto-fire is disabled. In this mode, you need to release the button between shots (this is how it is in the arcade).

    To start a game, either press RESET or joystick 1 button.

    PLAYING THE GAME

    Use the joystick to move your ship left and right to avoid incoming fire and to line up your shots to destroy the enemy. Press the fire button to fire up to 2 missiles (4 missiles when your ship is doubled). Destroy all of the enemies to advance to the next stage. The final release will have 99 levels to complete.

    THE ENEMIES

    • Bees (blue). These enemies fly towards in a loop pattern towards your ship when attacking. Be careful when they loop around to return back to the formation!
    • Butterflies (red). These enemies fly in more of a zig-zag pattern towards your ship and wrap around the screen when they pass your ship.
    • Boss (cyan/blue): These boss enemies fly alone or in packs protected by butterfly guards. The boss ships require two hits to destroy them; after one hit they turn from cyan to blue. Hitting them when they are blue will destroy them.
    • Split enemies (multiple): Starting on level 4, at some point during the level a bee will flash and split into 3 other enemies! They will swoop towards you and circle your ship; destroy all 3 for bonus points!
    • Captured ship (red or blue): When you ship is captured by a boss (see below), he is forced to fight for the opposition until he is freed! Although he can be destroyed, you should instead try to rescue him so that he may fight for your cause once again!

    TRACTOR BEAM

    Occasionally during a level, a boss ship will fly to a particular spot on the screen and emit a tractor beam attempting to capture your ship! If your ship is captured in the tractor beam, it will turn red (or blue for player 2) and join the enemy! When he takes off from formation, shoot his captor to free him and double up your ship (and double your fire power!). Be careful not to shoot the captured ship though! With double fire, your two ships will each fire a missile at the same time (up to 2 each).

    Also, if you do not have any reserve ships and your current ship is captured, there will be no one left to perform the rescue and your game will end. Be aware that if you are caught in the tractor beam, you can still fire missiles and may be able to shoot the boss ship and escape from the tractor beam as a last ditch effort.

    If you shoot the captured ship's boss ship while in formation, eventually the captured ship will attack solo; you should avoid shooting him and he will escape the level and return in the next stage (during fly-in, so be careful not to shoot him there either!) where you will get another chance to perform the rescue.

    CHALLENGE STAGES

    Starting on level 3 and every 4th level after that is a CHALLENGE STAGE. In this stage, the enemies do not fire and your ship cannot be destroyed. The object is to shoot as many ships as possible (up to 40) to increase your score. Shooting all 40 will result in a 10,000 point bonus.

    SCORING

    • Bee: 50 points in formation, 100 points in flight
    • Butterfly: 80 points in formation, 160 points in flight
    • Boss: 150 points in formation. In flight: 400 points with no guards, 800 points with 1 guard, 1600 points with 2 guards
    • Shooting all 3 'split' enemies: 1000 - 3000 points
    • Shooting all 8 enemies during a wave of the challenge stage: 1000 - 3000 points
    • Shooting all 40 enemies during a challenge stage: 10,000 points

    An extra ship is awarded at 20,000 points, 70,000 points, and every 70,000 points thereafter

    CONSOLE SWITCHES

    During a game the console switches do the following:

    • RESET will reset the game with the current skill/# of players/options
    • SELECT will end the current game and return to the title screen
    • COLOR/BW (PAUSE on a 7800) will pause the game; press or flip the switch again or press the joystick button to resume.
    • LEFT/RIGHT DIFFICULTY: enable/ disable auto-fire player 1 and player 2, respectively (A = disable, B = enable)

    TWO PLAYER

    In two player mode, player 2's ship will have a blue trim (player 1 trim is red) and player 2's score will be light blue (player 1 score color is white). Furthermore, when your ship is captured, player 1's captured ship is RED and player 2's captured ship is BLUE.

    GAME OVER

    When all a player's ships are destroyed and there are no reserve, GAME OVER will be displayed followed by the shooting ratio results. This includes the # of shots taken, # of hits and the hit ratio. Note that when you have double fire power, firing two simultaneous shots only counts as 1 shot taken since since both missiles can only hit one target (the other missile is disabled once one of the missiles hits a target).

    HIGH SCORE

    If the current player achieves a high score for the current skill level, the high score entry screen is displayed. Use the joystick to enter up to 3 initials. Move the joystick up/down to change the current initial (blinking) and press the button to move to the next initial. Move left/right to change the initial to update. Once completed, press the button after entering in the 3rd initial to register your name and be added to the list of GALACTIC HEROS!

    Savekey support has been disabled for this demo.

    CREDITS

    Special thanks to Nathan Strum for all of his hard work the last few weeks, even as he was putting in 60 hour weeks at work! His amazing work on the graphics and discussions on game design really inspired me to move forward with this project and enabled us to put the game together as quickly as we did. He also was the sole game tester and found many bugs (some that wouldn't seem to go away!) so thanks again Nathan!

    Also special thanks to Ross Keenum for his amazing sounds and music! Ross and I hadn't met or spoke before I reached out to him a month ago and he was very gracious in providing me with all the help I needed to get the music and sounds put into the game very quickly. He even spent some extra time making a few extra music and sound fx in short order!. Thanks Ross!

    Additional thanks for the extensive testing done by Steve Ramirez, Glenn (aka GRay Defender) and James (& Tayna) over at ZeroPage Homebrew, as well as Darrell Spice Jr., TJ, Dennis Debro and Mike Haas for additional testing and feedback. I hope I didn't miss anyone! :D


    RELEASE PLANS

    Right now the game is about 99% complete. Currently, we are targeting a release for sometime in late 2019 (I need to confirm with Al), possibly the Portland Retro Gaming Expo (October). Dave Dries has graciously signed on to do the box, manual, and label - thanks Dave! :) He has done amazing work on numerous AA projects, including Champ Games' own Scramble and the upcoming Wizard of Wor Arcade.

    Have fun!
    John

    galaga_demo_NTSC.bin
    galaga_demo_PAL60.bin

    • Like 46
    • Thanks 1
×
×
  • Create New...