Jump to content

Pixman

New Members
  • Posts

    6
  • Joined

  • Last visited

Pixman's Achievements

Combat Commando

Combat Commando (1/9)

0

Reputation

  1. Haha, that's a nice on. Thanks for the support so far. I already thought, that I was missing the thing about the PC-thing. The only bank switching I did so far was on the C64 with the VIC-II, means: I switched 16kb blocks which didn't actually interfere with the actual code, basically. But since the VIC-II graphic chip only can see 16kb at once, you can switch between 4 blocks and mandy different screen RAM & bitmap adresses I think I get it now. I've got an F8 scheme working now. I can't believe I didn't get it. I already got it before but I implemented it all the way wrong. For the sake of documentation: processor 6502 ;---BANK ONE--- org $d000 rorg $f000 b1: nop nop inc $82 lda $fff9 jmp b2 ; Using the same amount of bytes as in b1/b2, so that the program counter (PC) jumps back at the right address when we switch banks org $DFFA rorg $FFFA .word b1 .word b1 .word b1 ;--bank one vectors here. ;---BANK TWO org $e000 rorg $f000 b2: nop nop inc $81 lda $fff8 jmp b1 ;same as above org $EFFA rorg $FFFA .word b2 .word b2 .word b2 I don't want to be grumpy, but could it have been so hard to explain it like that with a code like this? Seriously?
  2. Well, I kinda got it working with a simple example I modified: processor 6502 ;---BANK ONE--- org $D000 rorg $F000 b1: nop nop nop inc $82 sta $fff7 jmp b2 ;--code code code org $DFFA rorg $FFFA .word b1 .word b1 .word b1 ;--bank one vectors here. ;---BANK TWO org $E000 rorg $F000 b2: nop nop nop sta $eff6 inc $81 jmp b1 ;---code, code, code, code org $EFFA rorg $FFFA .word b2 .word b2 .word b2 But when I check in the debugger, I get steps of four in $81. Dunno why. Any idea? Anyway, I'd be glad, if anybody could help me out with an easy solution to the first example (with the colored scanlines in the OP) using 2 banks. Don't care if the 2nd bank does nothing or just display a playfield or something. I somehow don't get it to work as I want it for me. very weird stuff is going on.
  3. So, $1ff6-9 is just working if the bank actual bank is set to $1000, right? otherwise, I'd have to use the appropriate bank. Like CFF6 etc.?
  4. Oh, this is awesome. I thank you a lot. I will try this when my brain is a bit more unstuck. I'm currently also fighting with Quaternions (grrr, evil fuckers ). Very interesting, I think I might figure it out with this. I'll give some feedback if I can. BTW, in your code, I can't see any usage of $1ff6 to $1ff9, which is a bit confusing to me. How's that? I saw into your macros. They make sense, sure. But I don't get why you don't have to fiddle around with setting the banks with those particular registers. €dit: Oh, I see, you're doing this on each bank with SelectBank1 .byte $00 SelectBank2 .byte $00 SelectBank3 .byte $00 SelectBank4 .byte $00 But what I don't get, you never write any values into those bytes. Or are you going back to bank 1 each time?
  5. Trust me, I have. I have also tried simpler variants (without all the code, wrote a new program with just 2 banks and a few nops). I just couldn't get it to work. Curiously, some examples I found on this board didn't work either. There is barely any proper example source out there. I'd be very grateful if you could point out or edit my source. I really need some guidance. This drives me crazy.
  6. Hi folks, I saw many examples, but none that satisfied my learning for a working program. I don't know what I am doing wrong. Look at this, I wrote a little program, that displays on every 192 scanlines a different color. You can see it here: http://pastebin.com/xbQu8FNk Written like this, it works. I'm working on something big and I really need the 8kb for that. Here's the code I can't get to work: http://pastebin.com/4b8CpeMj It should come back after a few nops and the program should run flawlessly! All I get is a black screen and some beeping noises. Sometimes some garbled graphics. Can please anybody explain me this properly? I worked 4 hours on this crappy bank switching. It seems all so easy, I'm missing something. I'd be very grateful for any help! My brain is hurting. Really. I just don't get it. And I have plenty of experience in C64/6502 and PC development. Thank you Best Regards, Pix
×
×
  • Create New...