Jump to content

jum

Members
  • Content Count

    168
  • Joined

  • Last visited

Posts posted by jum


  1. On 2/20/2020 at 12:12 AM, Adam Mace said:

    Where did you pull Audio from?  I got video working fine, just looking for the best spot to tap into Audio.  The pin going into the modulator?

    See attached picture (blue wire). Looks like resistor R41 (on my 2-port 5200, I think 4-port is the same). Like the other guys say, may be a good idea to add a resistor to the audio out (although mine sounds fine and the level seems OK).

    5200 audio.jpg


  2. On 1/28/2020 at 10:23 PM, Adam Mace said:

    Do you happen to have a schematic of this circuit you've made?  I'm working on a 5200 and getting real bad RF interference.   I'd rather bypass it entirely without buying a UAV board, but my theoretical knowledge isn't that great.  

    Here's a quick hand-drawn schematic. Not 100% sure about the polarity of the 0.1uF cap, or the connections to the 2N2222 / 2N3904 transistor (you should attach the transistor as per the schematic in your post).

    You could also try the schematic in your post. Will be interesting to see which gives a better picture.

    Disclaimer: I take no responsibility for any dead 5200's resulting from the use of this mod.

     

    5200 mod curcuit.jpg


  3. 7 hours ago, DrVenkman said:

    That's a heck of a weird thing to go wrong! Glad you finally got things figured out though!

    Yeah, pretty unusual fault.

     

    Lots of pondering over schematics and datasheets, and probing with an oscilloscope, was involved...

     

    Have now discovered the GTIA may be faulty - the player to player collisions don't seem to work! (Also unusual).

     


  4. Finally some closure to this forum post :)

     

    Fixed my 5200 after 14 years - turns out it was a faulty inductor L3, which is on the SELECT line for the 74LS245s that multiple the address going into the RAM.

     

     

    • Like 3

  5. Here are the pictures, although in person the images on the screen is not so bright and the ghosting is much less noticeable.

     

    Hopefully putting the mod onto a proto board and a bit of tweaking will give a slightly better image.

     

    IMG_20200114_195830.jpg

     

    Note:

    - RF modulator removed completely

    - Resistor R33 leg (audio) lifted off the board

    - Video signal taken from left side of L12 (green clip)

    - +5V taken from top of L13 (red clip)

    - Ground taken from top side of C40

    - Transistor used in mod circuit is KSP2222N    (2N2222?)

    - Resistor used in mod circuit is 100 Ohms

     

    These are just the first points I saw on the schematics that looked like they have the right signals, possibly there are better points to take the signal off.

     

     

    IMG_20200114_200343.jpg

    IMG_20200114_200243.jpg


  6. Just removed the RF modulator from my 2-port 5200 and wired in a simple composite connection using 1 transistor (2N2222?) and one resistor between video out and ground.

     

    Also cut the one leg of the resistor (R33?) that connects the audio to the video output. Have yet to connect the audio output.

     

    Very surprised at how good it looks (way better than 2600 and 7800 composite mods I have done). Will post pictures later.

     

    Tweaked the big pot on the lower right side of the board to get the colours correct. Video output may be a bit "hot", need to check that and maybe add voltage divider to the circuit.

     


  7. On 10/19/2019 at 3:17 PM, karri said:

    Really guys....

     

    The correct way to write this code is: "memcpy"

     

    Yes, that is true for this specific example, but only because you have optimised it, not the compiler.

     

    It's not a good example, maybe a better example is something like:

     

    for (i = 0; i < 32; i++)

            {

            B[i] = A[i] * 2 + 1;         // some processing is happening, not just a memcpy

            }

     

    As said before, the point of the comparison is to see how the the 2 compilers handle the same code construct.

     

     


  8. OK here's the cc65 code and ASM output for comparison. Note I used the cc65 "-Or" optimisation flag to enable register variables:

     

    cc65 code:

     

    void main()
    {
        uchar i;
        
        asm("nop");
        i = 31;
        do {
            MIKEY.palette[i] = work_palette[i];    
            i -= 1;
        } while ( i >= 0 );
    
        asm("nop");
        for (i = 0; i < 32; i++)
            MIKEY.palette[i] = work_palette[i];    
        asm("nop");
    }


     

    Assembler output (.s file):

    ; ---------------------------------------------------------------
    ; void __near__ main (void)
    ; ---------------------------------------------------------------
    
    .segment    "CODE"
    
    .proc    _main: near
    
    .segment    "CODE"
    
        jsr     decsp1
        nop
        lda     #$1F
    L0060:    sta     (sp)
        ldx     #$FD
        lda     #$A0
        clc
        adc     (sp)
        bcc     L0044
        inx
    L0044:    jsr     pushax
        ldy     #$02
        lda     (sp),y
        tay
        lda     _work_palette,y
        ldy     #$00
        jsr     staspidx
        lda     (sp)
        sec
        sbc     #$01
        bra     L0060
    L005F:    lda     (sp)
        cmp     #$20
        bcs     L004E
        ldx     #$FD
        lda     #$A0
        clc
        adc     (sp)
        bcc     L0058
        inx
    L0058:    jsr     pushax
        ldy     #$02
        lda     (sp),y
        tay
        lda     _work_palette,y
        ldy     #$00
        jsr     staspidx
        lda     (sp)
        ina
        sta     (sp)
        bra     L005F
    L004E:    nop
        jmp     incsp1
    
    .endproc
    
     

    Way longer/slower (for this example), and very hard to follow! 

    • Thanks 2

  9. Would be nice to see a comparison with cc65 generated ASM. If I get a chance tonight I will do same code in cc65 and upload the asm generated.

     

    Also would need to expand the lynx lib/module for Millfork.


  10. Hi Karri, actually I just now found the cause of the crashes (after a LOT of SD card swapping :{ 😞

     

    If I disable collisions, the game does not crash. I'm using the default TGI config with 2 draw buffers and collision buffer like so:

     

    // tgi locations of collision buffer (using -C lynx-coll.cfg in linker)
    #define COLLBUF 0xA058
    #define BUFFER1 0xC038
    #define BUFFER2 0xE018

     

    So possibly the stack is getting overwritten (underwritten?)? IDK, maybe something else?

     

×
×
  • Create New...