Language…
7 users online: blueribbonhighlife, DPBOX, Firstnamebutt,  GlitchCat7, Guido_Keller, marvisjj, orka-bln - Guests: 173 - Bots: 220
Users: 64,667 (2,403 active)
Latest user: DarthHylian

Posts by Jagfillit

Jagfillit's Profile → Posts

Does anyone know how $4216 and $4217 are determined when writing to $4202 and $4203? I understand how to use them, I just don't understand why it works.
Nice, this helped with a few things I was completely sure about.

Originally posted by HuFlungDu
Unless you were asking how to make it take up less tiles in SP4, in which case it should be a matter of changing the DMA ROM -> RAM routine to only do 2 uploads, instead of 4. I haven't tested that though, I'm just guessing, take it as you will.


Yeah, that's what I did with my Luigi sprite to do that. In addition, the GETSLOT routine should have 2 additional LSRs after the one it already has so it can it find every tile in the bin file, instead of only the first tile of every 32x32 block.


This is one of the side effects of my power up expansion patch, in which the game loads random 8x8 tiles in strange places occasionally, the tiles disappearing after they go off screen. Question is, does anyone know what could cause such errors, or even where in the ROM these tiles are loaded so I can use a debugger to solve this?

EDIT: I have also noticed that this only seems to happen after the camera moves down as Mario falls.
It doesn't deal with graphics, only Mario's palettes, via Roy's palette patch. That bit of the patch is the same as the original, except for some extra tables.
Okay now I realize why I never encountered this error before. I forgot the original patch was made before 1.71. Roy's custom palettes patch has the same exact error. Does anyone know where I can find smkdan's VRAM patch to figure out this error?
I should have figured it would be something like that. Thank you.
Bit of a general question here, but how does reading VRAM work?

Code
    LDX #$80    
    STX $2115
    LDX.b #!RAMbuffer1>>16
    STX $4314
    LDX #$81    
    STX $4310
    LDX #$39
    STX $4311
    LDY #$02    ;CH2
    
    LDA.l !RAMInput1
    STA $2116


;save row 1
    LDA.w #!RAMbuffer1
    STA $4312
    LDX #$40
    STX $4315
    STY $420B


I thought I understood and tried this, but got nothing. What I'm trying to do is have a bit of the onscreen layer 1 (location determined by !RAMInput1) transferred to !RAMbuffer1.
Ah, I was just missing a dummy read. Now it works, thanks.

New question however. I don't suppose anyone knows how IRQs are separated. I'm trying to create a third line, but I can't get the new IRQ's code to be read as a it's own bit and is instead read as part of the status bar's IRQ.
Originally posted by Kaijyuu
IRQs are like HDMA in that they're done during certain scanlines. I can't fathom how your IRQ is being run at the same time as the status bar one. Maybe right after it, but no way during.


Actually what I meant is that my new code is running together with the status bar's as one IRQ. I have two IRQs going, but I'm trying to get three.
Well shoot.

If I may, what does the powertool do exactly besides inserting exsprites? Like, what's customizable?