mirror of
https://github.com/Pecusx/scorch_src.git
synced 2026-05-20 22:33:43 +02:00
Splash is optional now.
This commit is contained in:
+13
-4
@@ -109,6 +109,8 @@ EndOfUnPlot
|
||||
.proc plot ;plot (xdraw, ydraw, color)
|
||||
; color == 1 --> put pixel
|
||||
; color == 0 --> erase pixel
|
||||
; xdraw (word) - X coordinate
|
||||
; ydraw (word) - Y coordinate
|
||||
; this is one of the most important routines in the whole
|
||||
; game. If you are going to speed up the game, start with
|
||||
; plot - it is used by every single effect starting from explosions
|
||||
@@ -165,9 +167,11 @@ ClearPlot
|
||||
.proc ExPlot ;ExPlot (EplotX, EplotY)
|
||||
; EOR plot:
|
||||
; Inverts color of a pixel
|
||||
; EplotX (word) - X coordinate
|
||||
; EplotY (byte) - Y coordinate
|
||||
; Note: No coordinate control!!!
|
||||
; With off-screen coordinates, it can damage main program.
|
||||
; only for ingame meteors
|
||||
; only for ingame meteors - for Atari only
|
||||
; -----------------------------------------
|
||||
; let's calculate coordinates from xdraw and ydraw
|
||||
;xbyte = xbyte/8
|
||||
@@ -195,8 +199,10 @@ ClearPlot
|
||||
; -----------------------------------------
|
||||
.proc point_plot
|
||||
; -----------------------------------------
|
||||
; checks state of the pixel (coordinates in xdraw and ydraw)
|
||||
; result is in A (zero or appropriate bit is set)
|
||||
; checks state of the pixel (coordinates in xdraw and ydraw)
|
||||
; xdraw (word) - X coordinate
|
||||
; ydraw (word) - Y coordinate
|
||||
; result is in A (zero or appropriate bit is set)
|
||||
|
||||
; let's calculate coordinates from xdraw and ydraw
|
||||
|
||||
@@ -227,6 +233,9 @@ ClearPlot
|
||||
;--------------------------------------------------
|
||||
.proc drawmountains
|
||||
;--------------------------------------------------
|
||||
; draw mountains from mountaintable
|
||||
; ClearSky - $ff Crear sky during drawmountains, 0 - no clear sky
|
||||
|
||||
mwa #0 xdraw
|
||||
mwa #mountaintable modify ; mountaintable pointer
|
||||
mva #1 color
|
||||
@@ -424,7 +433,7 @@ NothingToFall
|
||||
;--------------------------------------------------
|
||||
.proc SoilDownTurbo
|
||||
;--------------------------------------------------
|
||||
; fast SoilDown froc - test
|
||||
; fast SoilDown proc
|
||||
jsr ClearTanks
|
||||
NoClearTanks
|
||||
jsr CalcAndDrawMountains
|
||||
|
||||
+9
-4
@@ -101,6 +101,8 @@ EndOfUnPlot
|
||||
.proc plot ;plot (xdraw, ydraw, color)
|
||||
; color == 1 --> put pixel
|
||||
; color == 0 --> erase pixel
|
||||
; xdraw (word) - X coordinate
|
||||
; ydraw (word) - Y coordinate
|
||||
; this is one of the most important routines in the whole
|
||||
; game. If you are going to speed up the game, start with
|
||||
; plot - it is used by every single effect starting from explosions
|
||||
@@ -154,8 +156,10 @@ ClearPlot
|
||||
; -----------------------------------------
|
||||
.proc point_plot
|
||||
; -----------------------------------------
|
||||
; checks state of the pixel (coordinates in xdraw and ydraw)
|
||||
; result is in A (zero or appropriate bit is set)
|
||||
; checks state of the pixel (coordinates in xdraw and ydraw)
|
||||
; xdraw (word) - X coordinate
|
||||
; ydraw (word) - Y coordinate
|
||||
; result is in A (zero or appropriate bit is set)
|
||||
|
||||
; let's calculate coordinates from xdraw and ydraw
|
||||
|
||||
@@ -185,6 +189,7 @@ ClearPlot
|
||||
;--------------------------------------------------
|
||||
.proc drawmountains
|
||||
;--------------------------------------------------
|
||||
; draw mountains from mountaintable
|
||||
mwa #0 xdraw
|
||||
mwa #mountaintable modify
|
||||
mva #1 color
|
||||
@@ -305,10 +310,10 @@ NoMountain
|
||||
;--------------------------------------------------
|
||||
.proc SoilDownTurbo
|
||||
;--------------------------------------------------
|
||||
; fast SoilDown froc - test
|
||||
; fast SoilDown proc
|
||||
jsr ClearTanks
|
||||
NoClearTanks
|
||||
; jsr CalcAndDrawMountains
|
||||
; jsr CalcAndDrawMountains - to do (now Atari only)
|
||||
jmp DrawTanks
|
||||
;rts
|
||||
.endp
|
||||
|
||||
+15
-1
@@ -15,6 +15,8 @@
|
||||
.def TARGET = 800 ; 5200
|
||||
.ENDIF
|
||||
;---------------------------------------------------
|
||||
.def SPLASH = 0
|
||||
; if 0 - no splash screens
|
||||
.def CART_VERSION = 0
|
||||
; if 1 - dual splash screen
|
||||
.def METEORS = 1
|
||||
@@ -186,10 +188,22 @@ FirstZpageVariable = $50
|
||||
.IF TARGET = 800
|
||||
icl 'Atari/lib/ATARISYS.ASM'
|
||||
icl 'Atari/lib/MACRO.ASM'
|
||||
.IF SPLASH = 1
|
||||
icl 'artwork/splash_v2/splash.asm' ; new splash screen and musix
|
||||
.IF CART_VERSION
|
||||
.IF CART_VERSION = 1
|
||||
icl 'artwork/splash_v1/splash.asm' ; old splash screen (plays music from new splash)
|
||||
.ENDIF
|
||||
.ELSE
|
||||
; no splash.... dark screean and BASIC off
|
||||
ORG $2000
|
||||
mva #0 dmactls ; dark screen
|
||||
mva #$ff portb
|
||||
; and wait one frame :)
|
||||
seq:wait ; or waitRTC ?
|
||||
mva #$ff portb ; BASIC off
|
||||
rts
|
||||
ini $2000
|
||||
.ENDIF
|
||||
; icl 'Atari/Manual/manual.asm' ; manuals display
|
||||
.ELIF TARGET = 5200
|
||||
OPT h-f+ ; no headers, single block --> cart bin file
|
||||
|
||||
BIN
Binary file not shown.
Reference in New Issue
Block a user