Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- ;|| Lookup table format ||
- ;$9c00 - $9cff - claimed address tables --> $00 = unclaimed. overwrite flag set. any other vale --> overwrite flag unset.
- ;$a000 - $a1ff
- ; address pointer lsb - at $a000 + offset
- ; address pointer msb - at $a100 + offset
- sta $0200
- jsr make_first_object
- lda $a000
- ldx $a100
- brk;
- make_first_object:
- lda #$b0 ;final address byte, msb
- sta $0010
- lda #$00 ;lsb first address byte
- sta $0011
- jsr get_id
- rts
- get_id:
- ; check for available addresses
- ; write id to avail, return address
- ldy #$00
- main_run:
- sei
- tya
- sta $35
- lda #$9c
- sta $36
- lda ($35), Y
- cmp #$00
- beq exit_get_id;
- iny;
- jmp main_run
- exit_get_id:
- ;Not 100% functional. More debugging needed.
- tya
- pha
- sta $9c00, y
- tsx
- txa
- adc #$3
- tax
- lda $00,x ;get first address byte - lsb
- tay
- lda $a000
- sta $40
- pla;?
- pha;?
- adc $40
- sta $40
- tya
- ldy #$0
- sta ($40),y ;save first address byte
- ;|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
- tsx
- txa
- adc #$4
- tax
- lda $00,x ;get second address byte - msb
- tay
- lda $a100
- sta $40
- pla;?
- pha;?
- adc $40
- sta $40
- tya
- ldy #$0
- sta ($40),y ;save second address byte
- pla
- tay
- cli
- rts
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement