Jump to content

alex_79

Members
  • Posts

    2,166
  • Joined

  • Last visited

  • Days Won

    1

Posts posted by alex_79

  1. 18 minutes ago, Zonie said:

    Wonder if anyone has added a power connector and AV outputs to one to use as a standalone 2600? Stick them on the bottom so they cannot be used when it is plugged into the console?

    I've seen it done on a Coleco Expansion Module, which, just like the CX55, is a complete 2600 that only uses the Colecovision for power and the RF out, and it looks really cool as a standalone console:

     

     

    Given its shape, the CX55 wouldn't look that nice, I guess.

  2. The paddle capacitors can charge over time on 2600 consoles too, when nothing is connected to pins 5 and 9. Sometimes it might take hours for it o happen, sometimes less.

     

    I think that the only way to fix this for good is to have the software handle it: e.g. discharge the caps periodically, or always start with the ports configured for single button mode and only check for a two button controller after a button press is detected on pin 6 (INPT4-INPT5) which ensures that a controller is actually plugged in the port.

  3. 2 hours ago, Grizzly Adam said:

    I am hoping that there is some sort of warranty if it is truly dead.

    Don't worry, Fred (@batari) is a trusted member of the community (and he has been for a long time). This is an hobby and it's made in the spare time, so it might take some time for him to respond if he's busy with work family, etc., but he will surely sort this out.

  4. Usually a working Harmony cart displays something on screen even with a bad SD card (or no SD card at all), so the black screen isn't a good sign.

    On Linux, remember that the software needs read/write access to the serial port. Check your distribution's docs to see how to give your user such permission (e.g. on Arch Linux, which I'm using, you need to add your user to group "uucp"). Or run the software as root.

    Also, check that a new serial port device is created when you connect the Harmony to the PC (e.g. /dev/ttyUSB0)

  5. 13 hours ago, E. King said:

    That video with the screen transition glitch was played on a 7800 so either the glitching happened due to the AV mod ...

    As Thomas said, that's not possible or believable: whatever video mod is installed in that console, if it was sending non-standard sync signal, the glitches would happen randomly and not exactly at screen transitions.  That clearly indicates a problem in the software, as the timing of vertical sync pulses in a 2600 game is under software control.

    13 hours ago, E. King said:

    ... or the cartridge was not fully compatible with that particular 7800 console or there was some issue with the cartridge production ...

    Again, not possible: the cartridge function is to respond to an address outputted by the 2600 by outputting a byte on the data lines corresponding to that address. If it's not fully compatible, the game would glitch randomly (and typically crash almost immediately). The idea that a cartridge with a manufacturing defect would, by chance, only affect exactly some specific bytes so that the program miraculously keeps running with the only issue of altering the VSYNC exactly at the screen transition is absurd.

    The same applies in case of extra hardware in the cartridge like bankswitching or extra ram. A malfunction/incompatibility would cause random glitches and most likely a crash of the game.

    13 hours ago, E. King said:

    ... or the video capture

    Just like the hardware in the video mod or the one in the cartridge, the video capture has no concept of "screen transition". If the video capture displays the game fine except for screen transitions, it means that the game is doing something wrong when it needs to switch to the next screen.

     

    The glitch is due to the game (that is, the rom) beyond any reasonable doubt.

    • Like 4
  6. 7 hours ago, SledgeHammerD said:

    It looks like the Savekey editor is not available for download anymore.

    The binary is posted in the AtariVox club. Click on the "Join Club" button to become a member and you'll be able to download the attachments.

  7. 1 hour ago, stuartmcivor said:

    How did you get the $08C0 to $08FF value for Amoeba Jump?

    From the allocation list file linked in a previous post:

    https://atariage.com/atarivox/atarivox_mem_list.html

     

    Basically when a developer programs a game using the SaveKey, he can ask to reserve a slot for his game and it's added to that list.

    From the SaveKey page in the store:

    Quote

    Homebrew Developers

    If you're developing a new homebrew game for the Atari 2600 or 7800 and would like to add SaveKey/AtariVox support, we maintain a memory allocation list for games wishing to use the save feature of these peripherals. Blocks are allocated in 64 byte chunks, useful for saving high score information, game state information, user settings, and so forth. Games can be allocated more than one block if necessary, but we ask that you be efficient in the storage of any data your game must save to the SaveKey/AtariVox, as a limited number of blocks are available.

     

    Note that since each slot is 64 bytes and often the games don't need all that space, the same slot can sometimes be used by two or more games (usually from the same author). If a game is not on the list  and you have the rom, you can try it in Stella: the SaveKey addresses accessed by the game are listed in the "I/O" tab in the debugger.

     

     

  8. 8 hours ago, stuartmcivor said:

    I have never been able to get the AtariVox/Savekey Editor to work. I can edit the values but the changes never save. Restarting the atari and the values are back to the pre-edited ones, wherever they came from in the first place.

    It always worked fine for me. Just remember that you need to hit "Reload Data" after you change the base address.

     

    E.g. According to the allocation list linked above, "Amoeba Jump" uses 64 bytes, from $08C0 to $08FF

    When you start the "visk" program, it defaults to base address $3000, which is the start of the "scratchpad" area in the AtariVox/SaveKey.

    visk_2.thumb.png.3aa29fa3d0d63c30d5bb1f573c3a7e77.png

    Use the joystick to select the high byte of the base address

    visk_1.thumb.png.55f51cb3992fd7f1ec5835de437285dc.png

    press fire to edit it. Use the joystick to select and change the first two digit to "08", then press fire to exit edit mode

    visk_19.thumb.png.f8674fe2a3980bed71f66bcbdce5dfa6.png

     

    visk_20.thumb.png.f3bb70c6bf9bda82c8dddce2ad656e3d.png

     

    visk_4.thumb.png.c101f0fa907fc19e2c4943fa625be6af.png

    visk_23.thumb.png.1e08382a6c143440955b021f3ede06b3.png

     

    Then select the low byte and do the same: press fire, change it to "C0" using the joystick, press fire again

     

    visk_15.thumb.png.4759d63f51cfe9a59ef8ea21af75602c.png

     

    visk_16.thumb.png.564b2796ffe4f9f4a8f1df0d50f862ea.png

     

    visk_17.thumb.png.39b2069c6fa29ccc26cd99f8bb6723cc.png

    visk_18.thumb.png.2ae006d95affa4080f296fe65358ec5c.png


    Now select "Reload Data" and the program will load the selected area and update the display.

    visk_8.thumb.png.bf2595b861ecb0c4d130e30b6ee7ea07.png

     

    What you see on screen now is the entire 64 bytes area allocated to Amoeba Jump (in the screenshot is all "FF", so already empty, but if you played the cartridge and the high score has been saved, you'll see different values).

    visk_9.thumb.png.fd7f3c3b7423c79c258efb0dc279e0d7.png

    To erase them, just select one byte at a time, press fire and edit it to "FF", then press fire again and move to the next one.

     

    When you're done, select "Save Changes" and press fire to actually write the changes to the SaveKey.

    Finally, select "Reload Data" and press fire. The program will read again the selected area from the SaveKey and update the display. In this way you can confirm that the changes actually took effect.

     

    ---------------------------

    Note that you can easily use the program to copy an entire 64 byte page at once by selecting the base address of the source, hitting "Reload Data", then select the destination base address and hit "Save Changes" without first reloading data.

    So you could delete the entire page if you first load from a different one which is already empty (all "FF").

     

     

    • Like 3
  9. 42 minutes ago, Stephen Moss said:

    ...restore it back to how it was...

    That would be easier if the part of board coming out of the RF shield wouldn't have been snapped off...

     

    I saw that "technique" in the installation guides from the site linked below:

    https://vintagegamingandmore.com/guides/mods/

     

    Breaking the RF modulator is not the only totally unnecessary and destructive step in those guides (there's plenty of space to solder the wires after just desoldering or clipping the pins connecting it to the main board, which makes it possible to restore the console in its original form).

    e.g. the guide for the 6 switch Atari 2600, says to remove the bottom part of the shield and "throw it away". This leaves the main board hanging only connected by to screws on one end, with the other end (the one with the cartridge port!) without any support. The board will flex each time you insert and remove the cartridge which will cause cracks in the solder joints over time.

     

    Unfortunately those guides come up among the first results for "atari video mod" in search engines, which causes many poor consoles to be modded raped like that.

     

     

  10. 45 minutes ago, stuartmcivor said:

    Ameoba Jump and Stat-o-Gems Deluxe are two games i used to test after building some savekeys. 

    For Amoeba jump, according to this post:

    Quote

    To "reset" the highscore, you should start the game with the SaveKey disconnected from your console, and then plug it back in as soon as the intro-screen shows up.

    Then your next score will automatically become the highscore.

     

     

    For Start-o-Gems, the procedure is a bit more involved. From the manual (page 11):

    Quote

    If you wish to erase the high score and other records, push and hold SELECT or FIRE on power-up to bring up the selection menu. Then push and hold FIRE while tapping the joystick down, keep FIRE pressed while pushing and holding SELECT and RESET, then release FIRE while holding SELECT and RESET. The machine will beep to confirm the erasure.

     

    If you know what you're doing, you can erase any game's data by using the "AtariVox/Savekey Editor" software by @Karl G to overwrite the memory locations listed in the Savekey & AtariVox Memory Allocation List with a default value (probably $FF will be fine, but I'm not sure).

    • Like 1
  11. 43 minutes ago, Thomas Jentzsch said:

    Learning by doing. 

    Same.

     

    1 hour ago, zzip said:

    My first experience was on a typewriter much like this!   (It was my grandfathers).   They didn't even have a "1" key, you had to use the "l" key instead.

    lettera32.thumb.jpg.db3ed7269b6d1bd7255c9bd867a2d177.jpg

    • Like 2
  12. No, Stella doesn't emulate the Atari 7800, and cannot run 7800 roms.

    That option changes how the TV TYPE switch works (on the 7800 is the PAUSE momentary button), and the initial state of RAM, which on the 7800 is fixed and determined by the bios. Some 2600 homebrews check the initial state of ram to detect if the game is being run on a 7800 console, so that they can handle the PAUSE button correctly. The option is there for developers to test that feature, but there's not much point in setting it if you're just playing games.

    • Thanks 1
  13. 3 hours ago, Caleb Garner said:
    Quote

    driving controller oddly uses up and down inputs.

    yea that really is odd..  missed opportunity to just be more intuitive and in turn be more useful for other things

    Actually it is not odd at all. Having the encoder wired to the other two pins wouldn't have any advantage or increase compatibility. In fact, using pins 1 and 2 (as the driving controllers do) makes the code to read them slightly shorter and faster.

     

    Saying that the driving controller is wired to "up" and "down" inputs, just means that it is connected to the same pins that a joystick uses to read those directions, not that it sends any meaningful signal for a game programmed to read a joystick (It doesn't, actually).

    A driving controller cannot be used to move the player "up" or "down" in a joystick game just like it couldn't move it "left" or "right" if you'd rewire it to use the other pins.
     

    • Like 1
  14. 2 hours ago, SvOlli said:

    In the 80's there was a 2600 development system available for the Apple ][

    Are you referring to the frob?

    There are a few scans of the docs on Atarimania. No software or schematics, though. I remember it being discussed a few times over the years here on AA, but without details about the hardware or software.

    2 hours ago, SvOlli said:

    My final goal would be to recreate the board as an open source project (or a similar board from scratch) that will work with my Apple IIgs. What do you think, would this be achievable?
     

    I think it's a very cool project. I find old, obscure hardware like this very interesting. I guess the hardest part is to find someone who actually owns the device who is also willing to trace the board, or lend it to someone with the expertise to do it.

     

    • Like 2
  15. 5 hours ago, -^CrossBow^- said:

    So basically there exists a version of Survival Island that has all the loads merged into a single and larger ROM file that should work on the UNO and harmony might require this as well.

     

    That's correct. AFAIK every current emulator and flashcart requires the multiload games to be in a single file. The loads are simply concatenated, with no change to the data. If you have the separate files (one for each load), you can just concatenate them yourself.

     

    e.g. with

    copy /B load1.bin+load2.bin+load3.bin game.bin

    in Windows command prompt

     

    or

    cat load1.bin load2.bin load3.bin > game.bin
    

    in Linux shell.

     

    Anyway, Rom Hunter's rom collection on AtariMania includes both the split and combined files.

    Remember that "Party Mix" is not a multiload game!! For that one you need the separate files. For everything else with multiple loads, use the combined file.

  16. Just in case, double check all the options in your TV. Even if disabled by default, sometimes there's an option to enable analog RF tuning hidden in some sub-menu.

    Another option is to find an old analog tuner like the one shown here.

  17. 2 hours ago, Caleb Garner said:

    i seem to recall the paddles are wired for Up and Down though.. not left and right which one would assume..

    Yes, the 2 bit gray code is sent to pins 1 and 2 (here's a diagram of the controller). Those are used for up and down direction in a joystick, but on a driving controller there's no direct correlation between each one of the pins and a specific direction. The direction of rotation is calculated by the program comparing the current value (of both pins) with the previous one.

     

    Consider that the low resolution of the driving controller is an issue when trying to use it for "paddle" style games because moving an object from one side of the screen to the other would take several full rotations of the knob.

    In this thread, @Thomas Jentzsch shows how to apply acceleration to the movement to partly compensate for that.

    The source code is of course for the 2600, but the concepts could be translated to the O2.

     

     

    • Like 1
  18. 14 hours ago, Caleb Garner said:

    it got me wondering if an O2 game could be made to respond to the number presses..

    It can't.

     

    Each Atari 2600 controller port has 4 bi-directional pins (pins 1-4), normally used as inputs for the joystick directions, and 3 input-only ones (pin 5,6 and 9), which are the inputs used for the paddles pots and the joystick button. The paddles lines can also be pulled LOW under software control (all four of them at the same time) and, with some limitations, can therefore work as a sort of output (e.g. they're used in the QuadTari device to enable one of the two sets of controller ports).

     

    The keypad is wired as a 3x4 matrix, with columns connected to pins 5,6 and 9 and rows to pins 1-4 (and two pullup resistors on the paddle pins, to keep them in HIGH state when no button is pressed). The program in the Atari configures pins 1-4 as outputs and sequentially sets one of them "LOW", each time reading the 3 columns pins: if one of them reads LOW too, it means that the button corresponding to that row/column combination is pressed.

     

    The O2 only has 5 (uni-directional) input pins for each joystick port/cable, so it can't do any of that.

     

     

    • Like 1
  19. 17 hours ago, juansolo said:

    If they're all EPROMs it should be as simple as lifting the CS pin on each chip and running it through a switch to select the active ROM.

    Or just use a single larger eprom and switch the higher address pins.

    • Like 3
×
×
  • Create New...