IWETHEY v. 0.3.0 | TODO
1,095 registered users | 2 active users | 3 LpH | Statistics
Login | Create New User
IWETHEY Banner

Welcome to IWETHEY!

New Yep
Still constrained by how video works on the Atari. There's not enough RAM for a frame buffer, so you must update the video chip's registers on every scanline.

There's 76 cycles of CPU time per scanline. One of the more common routines to update a single sprite & it's color (for the common line-by-line color change in later games) takes 26 cycles
   lda #SPRITEHEIGHT

dcp SpriteTemp
bcs DoDraw
lda #0
.byte $2C
DoDraw
lda (GfxPtr),Y
sta GRP0 ;+18 cycles <--- sprite image register
lda (ColorPtr),y
sta COLUP0 <--- sprite color register


For my game Stay Frosty, I used a mask overlay, which greatly increased ROM usage but only took 21 cycles
   LDA (SpritePtr),y  ; 5

AND (SpriteMask),y ; 5
STA GRP0 ; 3
LDA (ColorPtr),y ; 5
STA COLUP0 ; 3


PitFall 2 uses coprocessor, known as DPC (display processor chip), that knocked that down to 14 cycles
   LDA DF0DATAW ; 4 <--- DPC register

STA GRP0 ; 3
LDA DF1DATA ; 4 <--- DPC register
STA COLUP0 ; 3


The ARM cartridge has support to emulate the DPC so you can use it to play Pitfall 2. We modified it to take advantage of the capabilities of the ARM cartridge, such as monitoring what's read from the cartridge so we could override the LDA Immediate mode and reduce that down to 10 cycles.
   LDA #<DF0DATAW ; 2

STA GRP0 ; 3
LDA #<DF1DATA ; 2
STA COLUP0 ; 3


The saved cycles can be used to do other video chip updates, giving you the ability to do better graphics than normal for the Atari. I posted sample code for DPC+, of which the last demo does 29 updates of the video chip over 2 scanlines.
http://www.atariage....-dpc-programming/
New I can see why you enjoy the challenge! :-)

Q:Is it proper to eat cheeseburgers with your fingers?
A:No, the fingers should be eaten separately.
New digitized audio on the 2600
Yes - that primitive hardware can be made to play back digitized samples! It's limited to 4-bit samples. It can easily handle 8000 Hz, but this demo is at 4000 Hz due to RAM and ROM limitations for use in a game.

http://www.youtube.c...tch?v=NEDP0Ch0j8M
     Its baaack! - (beepster) - (18)
         saw that a while back - (SpiceWare) - (17)
             The other interesting piece - (beepster) - (16)
                 don't need an emulator - (SpiceWare) - (15)
                     Just wondering ... - (drook) - (14)
                         You haven't spoken to any synthesizor fanatics, then. - (static) - (2)
                             Ensoniq EPS here. - (malraux) - (1)
                                 Cool. -NT - (static)
                         Non sequitur.. - (Ashton)
                         sure - it's just a hobby - (SpiceWare) - (9)
                             The cartridge is more powerful than the console? :-D - (static) - (3)
                                 Yep - (SpiceWare) - (2)
                                     I can see why you enjoy the challenge! :-) -NT - (static) - (1)
                                         digitized audio on the 2600 - (SpiceWare)
                             Looks like Tempest ... I loved that game - (drook)
                             Frantic's now playable - (SpiceWare) - (3)
                                 Reminds me of Shamus - (malraux) - (1)
                                     Thanks! - (SpiceWare)
                                 took a diversion - (SpiceWare)

For Wade, it is to lag.
50 ms