Jump to content

splendidnut

+AtariAge Subscriber
  • Content Count

    500
  • Joined

  • Last visited

Posts posted by splendidnut


  1. I'm really happy with the how the scrolling cityscape background turned out.  Getting that working really got me excited about working on this.  I personally feel it's a key element for this game... both for providing a nice backdrop to the game and for reinforcing the illusion of movement, helping to offset the coarse horizontal scrolling.

     

    ** For those interested in the technical details behind the cityscape: **

     

    The cityscape was done in a very "quick and easy" kind of way... using a bunch
    of ROM (20 bits wide by 8 "rows" tall, pre-rotated graphics => 480 bytes of ROM total),
    a couple of MACROs and a very simple kernel:

        MAC Draw_Buildings
            LDA     building_pf0,x  ;4  [4]
            STA     PF0             ;3  [7]
            LDA     building_pf1,x  ;4  [10]
            STA     PF1             ;3  [13]  -- needs to be 28
            LDA     building_pf2,x  ;4  [17]
            STA     PF2             ;3  [20]
        ENDM
    
    
        MAC Draw_Sprites            ;-- needs to start on/before cycle 68
            LDA        (carPtr),y      ;5  -73-
            STA        WSYNC           ;3
            STA        GRP0            ;3  [3]
            LDA     (curSprPtr),y   ;5  [8]
            STA     GRP1            ;3  [11]  -- takes 19 cycles... but ends at cycle 11
        ENDM


    And some example code from inside the main kernel:

           

            ;---------------------------------------------------------
            ;--- draw balloons/falling cars/top half of buildings
                    
            LDX     <curBgOfs           ;3  -66-   -- set building offset
            LDY        #15                 ;2  -68-
    drawTopOfBuilding:
            Draw_Sprites                ;19 [11]
            Draw_Buildings              ;20 [31]
            
            ;---- handle building scaling... which is 4x height  (takes 7/8 cycles)
            TYA                         ;2  [33]
            AND     #3                  ;2  [35]
            BNE     skipYinc            ;3  [37,38]
            DEX                         ;2  [39]
    skipYinc:
            DEY                         ;2  [41]
            BPL     drawTopOfBuilding   ;3  [44]

    SIDE NOTE:  There are two separate loops: one for the top of the buildings, and one for the bottom.  I did this to give me two 16 pixel vertical zones for the sprites.

     

    Implementing the scrolling background in the way seen above turned out to be a blessing in disguise; It helped provide lots of spare kernel
    time which could be used for processing the road.

     

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

     

    Sorry for the delay in responding to the posts here... I got a bit wrapped up in bunch of things, part of which involved a lot of work on this project.  And I wanted to have enough time to start doing some write-ups on this project as I go.

     

    Hope you enjoy this tidbit.  :)   Project update coming soon.

    • Like 2

  2. 13 hours ago, Shawn said:

    This is exactly what happened in my situation as well. Looks like we might be getting close to blaming the SALLY for concerto incompatibility. I think that is a win. Glad you where able to reproduce the same results I did with a compatible and incompatible CPU. I'm assuming the other CPU works perfectly with everything but the Concerto correct?

     

    Yeah, everything else seems to run perfectly on it.  Granted, I don't have that many homebrew or odd-ball carts to try; all the common 7800 games run on it, the Harmony cart runs good (even better than either of my 2600s).  Rikki and Vikki runs fine on it.  This is the first time I've had issues with this 7800.

     

    12 hours ago, RevEng said:

    Interesting that the CPU was running fine in the 800xl, which runs at the same base frequency at the 7800. Do you have a way to run the acid800 tests on your 800xl with this CPU? While the test is mainly for punishing emulators, the CPU specific tests could turn up something interesting. (though I'm leaning toward this being some kind of timing based difference.)

     

     

    Ran the acid800 tests on the 800xl... everything passed.  So I'm also leaning towards some weird timing difference.

     

    • Like 3

  3. 2 hours ago, Shawn said:

    Now I'm curious to see if anyone with multiple consoles who have the ability to switch out IC's could repeat the process of switching out the CPU between machines that are known to work and not work with the concerto. It they also turn out to be directly effected by the SALLY and nothing else that would be interesting. 

     

    I swamped the NCR CPU in my 7800 with the Rockwell one in my 800xl.   The Concerto seems to work fine with the Rockwell CPU, but not the NCR one (menu works... game loader does not).  My NCR CPU is close in date to your non-working one  (my non-working NCR cpu has date code 8405).

     

    • Like 3

  4. I got my Concerto yesterday and I'm having issues getting 7800 games to work.   Menu and file navigation seem to work fine and 2600 games load and run.  But 7800 games don't.  I cannot load/run the 7800 Utility cart ROM; it stalls out at 80% when loading.  Other 7800 ROMs either stall out while loading, load and switch to a blank screen, or load and switch to a scrambled screen.


    I've tried firmware versions 0.92, 0.93, 0.94, and 0.95 without any luck. 

     

    I'm using a SanDisk Ultra 16GB, 48MB/s SDHC card… I’ve also tried an 32GB/80MB/s SanDisk card as well.

    My 7800 motherboard is C025233-001. Rev A.  - which has the expansion port and all the chips are socketed.

     


  5. 6 hours ago, christo930 said:

    Just an FYI, the bonus item thing is broken.  It wraps around at FF and goes back to zero (if you don't want to add another bit, maybe just stick at ff) and it is way too easy.

    Yeah, I agree.  The current implementation (free-running timer with high bit signalling active state) was a quick and dirty way to get the bonus item working.  Nice for testing purposes, but too easy for general gameplay.  So, I'll switch the bonus item to utilize the burger count instead of the timer... when I look at the code again.

     

    Currently, I have a bunch of changes sitting on my computer that I need to finish up/clean up.  One of the changes being a pretty major overhaul of the burger dropping system, which should take care of the really oddball bugs which occurred when dropping burgers.  I still need to fix some  scheduling issues with the burger logic so that I can get my scanline count stable again.  That may be the only thing that's stopping me from releasing another build.  I'm not sure, as I haven't looked at the code in a few months... and currently, I've been focused on getting more done with Paint The City.  But I might take a look in the near future... Despite the appearance of being almost done, there's still quite a bit I want to do with ChaoticGrill.

    • Like 3

  6. According to John, Robotron won't be out until next year:

     

    Quote

    We were originally planning a holiday 2020 release but since Zoo Keeper and Avalanche have been delayed in the store (plus we're still working on the artwork for RobotWar, being done by David Exton), we're pushing the release to early 2021 (not sure exactly when yet). 

     

    • Like 1

  7. Cool!  I just tried the stats viewer in FireFox and Chrome on Windows 7 and it appears there are JS issues.  But it looks like they're in the stats viewer component itself and not your program.

     

    image.thumb.png.a0d31a051f9b5252c65763249a1ab4cb.png

    EDIT:  Upon further inspection, it looks like they might be/probably are meaningless.

     


  8. Awesome!  Thanks for posting that @TwentySixHundred

     

    My first impression is that this is a pretty good start.  I definitely like the physics engine better than both the original and the NES versions.  Overall, the game seems to work quite well as a paging platformer.  Though I can definitely see the desire of wanting this to be a scrolling platformer like the original.  The 7800 needs more horizontal scrolling platformers!  :)  -- (If I were to make a 7800 game, that's probably what I'd do.... which I should do at some point)

     

    After I made that post the other day, I ended up playing the DOS version of Captain Comic quite a bit.  I was a bit surprised at how much better I was at the game than when I was a kid.  I succeeded at the "leap of faith" jump on the moon level, on the first try!  I gave the NES version a go... and agree with the other assessments people made in this thread.

     

    Overall, I think you've really started to capture the spirit of the original and I hope you do continue with this project... whenever that may be.

     

    Thanks again for sharing.

     

    ----

     

    Some random thoughts that came to mind:  Given this POC, I could easily envision either a 2600 version being made OR with the current graphics style, this could easily be an A8/5200 game.  Just some food for thought.

     

    Also some links I found that might be useful with development:  (wrapped in a spoiler section due to actual spoilers when following the links)

     

    • Thanks 1

  9. @JetSetIlly  I completely understand that this is mainly a fun/educational project.  There's no need to apologize.  I'm merely providing input from my experiences of trying out this interesting project. 

     

    1 hour ago, JetSetIlly said:

    But I have to be honest that I don't understand why you think 70mb after one minute is a memory leak.

     

    I did NOT specifically say there is a memory leak.  I only meant to indicate there might be one:

     

    Quote

    Also, it seems to slowly eat more and more memory.

    ...

    As for memory leaking:  I let it go for awhile and after about a minute, it was around 70mb (in run mode) and was continuing to climb.

    (Granted, I should have inserted the word "potentially" in that second sentence and that would have made things more clear.)

     

    If that's expected (hitting 70mb... and yet still climbing), then there's really nothing to discuss.  Personally, I would be worried about a slight memory leak with those circumstances.  But that's just me :)

     

    ...

     

    SO.... just ran the program for ~5 minutes... and we're up to 71mb.  So I guess we're okay in that area.  Still climbing though... but that might just be the nature of memory allocation/garbage collection in Go.

     

    As for Specs:  I'm running Windows 7 (64-bit) on an Intel Core i5 M520 @2.4ghz with 6gb.  Graphics is NVidia NVS 3100M.

    Yes, some would say this is an old laptop... but Stella runs just fine on it :)


  10. 18 minutes ago, Al_Nafuur said:

    It is called "debugger", if it would run at full speed it would be a "player" 🙂

    I should have been more clear... to my eyes both the debugger and regular run mode appeared to run at the same speed.

     

    I did run the command provided and got 43 fps.  So I guess my eyes are relatively good at judging similar FPS performance :)

     

    As for memory leaking:  I let it go for awhile and after about a minute, it was around 70mb (in run mode) and was continuing to climb.


  11. Cool!  A Windows version... I can finally try this out on my main development machine.

     

    ... Only to discover it runs too slow to be useful.  Ugh.

     

    Are there any options to speed things up?    I'm currently getting 40fps in the debugger.

     

    Also, it seems to slowly eat more and more memory.


  12. Alright, now to give some actual feedback on the game itself.

     

    I like how you've setup the control scheme.  Left/Right - slow, fast... Up/Center/Down + Button = Jump Hi/Mid/Low.   That really adds a nice touch.  I kind of wish the controls had a bit more control over the player... but overall it works.  Definitely need to use a joystick for best results :)

     

    I really like the level of detail the main player has and the bird animation is great.  The other enemies could do with a bit of work... but it looks like you're pretty tight on space at this point.

     

    Great first project... Looking forward to seeing where you go from here.


  13. Cool project.

     

    Looked thru the code real quick and noticed your VSYNC code might cause issues:

     

    Frame:      LDA #2
                STA VSYNC   ;start vertical sync
                
                STA WSYNC   ;three WSYNCs are needed for vertical sync
                STA WSYNC   ;here's the second WSYNC
                STA WSYNC   ;and 3 WSYNCs
                
                LDA #44
                STA TIM64T  ;Timer for vertical blank
                            ;EQUATION: scanlines = (timer * 64) / 76            
                LDA #0
                STA VSYNC   ;end vertical sync

    You might want to add/or make sure a STA WSYNC occurs right before both of the STA VSYNCs to make sure it's turned on/off at the exact same time during the scanline.  This helps prevent sync/bounce issues on newer TVs.


  14. Although I've been working on a lot of projects over the past several months, this has been my focus as of late.

     

    This project started over a year ago, as a quick (couple of days) POC (proof of concept) before being shelved due to work on other projects.  I recently picked it back up amid numerous frustrations on other projects.  And despite a rough start at the beginning, it's become quite an enjoyable project.

     

    After spending the last 3 weeks working on it, it's finally getting to the point where it might be playable soon.  As of right now, a good amount of the player mechanics have been implemented, at least enough to demonstrate the general gameplay concept (*see project_name*).

     

    That's the main reason I'm releasing this demo.

     

    The other reason is that this project has come to a nice critical point, code-wise.  Despite being an 8k file... the project is currently under 4k code and data (it can be a 4K Superchip rom). It's only setup as an 8k rom for running on the Harmony Cart.

     

    BUT, at this point, I can't really go much further development-wise without pushing beyond that 4k limit.

     

    ADDENDUM:  First demo ROM (November 6, 2020) here:  PaintTheCity-(early_demo)-(20201106).bin

    • Like 4

  15. Paint The City

     

    Paint the city as you explore it's many places.  

         Collect oil cans, shoot them at other cars,
           grab some balloons and avoid whatever other obstacles cross your path...

     

    image.thumb.png.b068c6af3b8de6de77ae6571959437e9.png



           
           ...coming soon to a download near you!

     

     

       Use the joystick to navigate the multi-story roads.  You can jump
       bewteen the platforms... but be careful, don't bump your head!
       
       
    *Based on an Arcade game, can you guess what it is?*
       
    -------------------------

    LATEST:

     

    *EARLY DEMO (NTSC)  (March 30, 2021)*

     

    PaintTheCity-WIP-NTSC-20210330.bin

     

    *EARLY DEMO (PAL60)  (March 30, 2021)*

     

    PaintTheCity-WIP-PAL60-20210330.bin

     

    • Like 17

  16. 6 hours ago, atari2600land said:

    I hate Stella. I tried this version on a Harmony cart and the scanline was jumping like jumping beans. WHY?!

    Just checked it in Stella 6.2.1 and it does show that the scanline count bounces between 261 and 262.


  17. On 9/19/2020 at 1:23 AM, D Train said:

    @ZeroPage Homebrew you guys should make some burgers while talking to @splendidnut about chaotic grill!

     

    how's that going, 'nut?

    Work on ChaoticGrill has been dragging this year... partially because I've gotten distracted working on other interesting projects.

     

    I was playing around with tweaking the Chef's speed, but that caused all the rare burger dropping bugs to be easily exposed, so I ended up completely rewriting the burger logic code.  Hopefully doing that killed all the bugs in that area.   Now I just need to sit down again and fix the line-count issues before I put another build out.  :)

    • Like 3
×
×
  • Create New...