mode7: more work on starfield demo

all it does is plot single blob in center of screen
This commit is contained in:
Vince Weaver 2017-12-29 00:11:38 -05:00
parent 78b9ee1e50
commit 209198a57a

View File

@ -4,6 +4,9 @@
; CONSTANTS
;===========
NUMSTARS EQU 16
;=====================
; Starfield
;=====================
@ -23,9 +26,45 @@
; Init Variables
;===============
lda #0
sta DRAW_PAGE
starfield_loop:
;===============
; draw stars
;===============
draw_stars:
ldx #NUMSTARS
lda #20
ldy #20
;================================
; put address in GBASL/GBASH
; Xcoord in A, Ycoord in Y
sta TEMPY
lda gr_offsets,Y ; lookup low-res memory address ; 4
clc ; 2
adc TEMPY ; 3
sta GBASL ; 3
iny ; 2
lda gr_offsets,Y ; 4
adc DRAW_PAGE ; add in draw page offset ; 3
sta GBASH ; 3
;===========
;
ldy #0
lda #$ff
sta (GBASL),Y
dex
bne draw_stars
starfield_keyboard:
jsr get_key ; get keypress ; 6
@ -70,3 +109,34 @@ skipskip:
.include "../asm_routines/multiply_fast.s"
;======================
; some "random" numbers
;======================
random_table:
.byte 103,198,105,115, 81,255, 74,236, 41,205,186,171,242,251,227, 70
.byte 124,194, 84,248, 27,232,231,141,118, 90, 46 ,99, 51,159,201,154
.byte 102, 50, 13,183, 49, 88,163, 90, 37, 93, 5, 23, 88,233, 94,212
.byte 171,178,205,198,155,180, 84, 17, 14,130,116, 65, 33, 61,220,135
.byte 112,233, 62,161, 65,225,252,103, 62, 1,126,151,234,220,107,150
.byte 143, 56, 92, 42,236,176, 59,251, 50,175, 60, 84,236, 24,219, 92
.byte 2, 26,254, 67,251,250,170, 58,251, 41,209,230, 5, 60,124,148
.byte 117,216,190, 97,137,249, 92,187,168,153, 15,149,177,235,241,179
.byte 5,239,247, 0,233,161, 58,229,202, 11,203,208, 72, 71,100,189
.byte 31, 35, 30,168, 28,123,100,197, 20,115, 90,197, 94, 75,121, 99
.byte 59,112,100, 36, 17,158, 9,220,170,212,172,242, 27, 16,175, 59
.byte 51,205,227, 80, 72, 71, 21, 92,187,111, 34, 25,186,155,125,245
.byte 11,225, 26, 28,127, 35,248, 41,248,164, 27, 19,181,202, 78,232
.byte 152, 50, 56,224,121, 77, 61, 52,188, 95, 78,119,250,203,108, 5
.byte 172,134, 33, 43,170, 26, 85,162,190,112,181,115, 59, 4, 92,211
.byte 54,148,179,175,226,240,228,158, 79, 50, 21, 73,253,130, 78,169
z_table:
; 1/16.0 - 1/12.25
.byte $10,$10,$10,$10,$11,$11,$11,$11,$12,$12,$12,$13,$13,$14,$14,$14
; 1/12.0 - 1/8.25
.byte $15,$15,$16,$16,$17,$17,$18,$18,$19,$1A,$1A,$1B,$1C,$1D,$1E,$1F
; 1/8.0 - 1/4.25
.byte $20,$21,$22,$23,$24,$25,$27,$28,$2A,$2C,$2E,$30,$33,$35,$38,$3C
; 1/4.0 - 1/0.25
.byte $40,$44,$49,$4E,$55,$5D,$66,$71,$80,$92,$AA,$CC,$00,$55,$00,$00