I apologize in advance for the open limb and the general miserable problem of this question, because, frankly, my knowledge of the topic is very heterogeneous, and it is difficult for me to describe my problem. I really did not want to publish, but I was completely and completely stuck.
I launched the NES emulator. It was interpreted (so no dynamic recomp).
Atm it can load and display roms (mapper 0 roms) and execute initialization code right down to where I have to deal with interrupts and PPUs. That I'm stuck.
Here is an example output from my emu atm. Execution starts at 8000, and I end up in an endless loop at 800a, where I have no idea how to move from there.
8002: LDA
8004: STA $2000 ; store value
8007: LDX
8009: TXS ; store X register into stack
800a: LDA $2002 ; read PPU flags into accumulator (set N flag based on bit 7)
800d: BPL ; test N flag, branch to 800a if not positive, (N is set)
800a: LDA $2002
800d: BPL
800a: LDA $2002
800d: BPL
800a: LDA $2002
800d: BPL
etc, etc etc (inf loop)
, : - 1- PPU , , , .. (.. 240 ).