home *** CD-ROM | disk | FTP | other *** search
- *------------------------------------------------------
- *
- * *** Super Magic 320 Demo ***
- *
- * This program is written by Lim Thye Chean to
- * demonstrate the capability of Super Magic 320,
- * the library routines to release the full power of
- * 320 x 200 Super Hires.
- *
- *------------------------------------------------------
-
-
- mcopy SM.macros
-
- copy SM.header
-
- *------------------------------------------------------
- *
- * Variables
- *
-
- T1 gequ $0
- T2 gequ $2
-
- GX gequ $10
- GY gequ $12
- SX gequ $14
- SY gequ $16
- OldGX gequ $18
- OldGY gequ $1A
- OldSX gequ $1C
- OldSY gequ $1E
- GXDir gequ $20
- GYDir gequ $22
- SXDir gequ $24
- SYDir gequ $26
- LoveX gequ $30
- LoveY gequ $32
- OldLoveX gequ $34
- OldLoveY gequ $36
- LoveYDir gequ $38
- TextClr gequ $40
- TextCDir gequ $42
- TextAddr gequ $44
- MsgCount gequ $46
- ShineCnt gequ $48
-
- *------------------------------------------------------
- *
- * Main Program
- *
-
- Main start
- using MainData
- using SMData
-
- *
- * Initializing data
- *
-
- lda #150 Set up 'G', 'S' and heart shapes
- sta GX
- lda #102
- sta GY
- lda #160
- sta SX
- lda #103
- sta SY
- stz LoveX
- lda #100
- sta LoveY
-
- lda #1
- sta GXDir
- sta GYDir
- stz SXDir
- stz SYDir
-
- lda #20
- sta Length
- lda #21
- sta Height
-
- lda #$FF0
- sta TextClr
- stz TextCDir
-
- jsr Startup Start Super Hires
-
- *
- * Setup stars
- *
-
- ldx #78
- ldy #4
- clc
-
- SS1 tya
- sta StarX,x
- adc #8
- sta StarX-2,x
- adc #8
- tay
-
- lda #0
- sta StarClr,x
- sta StarClr-2,x
-
- lda #3
- sta StarMove,x
- lda #5
- sta StarMove-2,x
-
- lda #25
- sta StarTop,x
- inc a
- sta StarTop-2,x
-
- dex
- dex
- dex
- dex
- bpl SS1
-
- *
- * Introduction screen
- *
-
- stz Palette Set up the palettes for
- stz RGB introduction screen
- lda #7
- sta ClrNum
- jsr SetClr
-
- lda #1
- sta Palette
- sta ClrNum
-
- lda #0
- sta RGB
- jsr SetClr
- inc ClrNum
-
- stz RGB
- jsr SetClr
- inc ClrNum
-
- stz RGB
- jsr SetClr
- inc ClrNum
-
- stz RGB
- jsr SetClr
- inc ClrNum
-
- stz RGB
- jsr SetClr
- inc ClrNum
-
- stz RGB
- jsr SetClr
-
- lda #65
- sta Y
-
- IS1 jsr SetSCB Draw background
- inc Y
- lda Y
- cmp #200
- bcc IS1
-
- stz X1
- lda #319
- sta X2
-
- lda #65
- sta Y
- lda #$1111
- sta Colour
- lda #1
- sta T1
-
- IS2 ldx #0
-
- IS3 jsr HorLine
- inc Y
- inx
- cpx T1
- bcc IS3
-
- lda Colour
- clc
- adc #$1111
- cmp #$7777
- bcc IS4
-
- lda #$1111
- IS4 sta Colour
-
- inc T1
- lda T1
- cmp #16
- bcc IS2
-
- lda #Red
- sta Colour
- lda #20
- sta X
- lda #35
- sta Y
- ph2 #Intro
- jsr Print2
-
- lda #$FFFF
- sta Time
-
- stz Palette
- stz RGB
- lda #7
- sta ClrNum
- clc
-
- ldx #$D
-
- IS5 jsr Delay
- lda RGB
- adc #$100
- sta RGB
- jsr SetClr
-
- dex
- bne IS5
-
- jsr Delay
-
- *
- * Display title
- *
-
- stz T1
- inc Palette
-
- ldx #0
- ldy #11
-
- DT1 jsr Delay
-
- cpx #$80
- bcs DT2
- lda #1
- sta ClrNum
- stx RGB
- jsr SetClr
-
- DT2 cpx #$90
- bcs DT3
- lda #2
- sta ClrNum
- stx RGB
- jsr SetClr
-
- DT3 cpx #$A0
- bcs DT4
- lda #3
- sta ClrNum
- stx RGB
- jsr SetClr
-
- DT4 cpx #$B0
- bcs DT5
- lda #4
- sta ClrNum
- stx RGB
- jsr SetClr
-
- DT5 cpx #$A0
- bcs DT6
- lda #5
- sta ClrNum
- stx RGB
- jsr SetClr
-
- DT6 cpx #$90
- bcs DT7
- lda #6
- sta ClrNum
- stx RGB
- jsr SetClr
-
- DT7 txa
- clc
- adc #$10
- tax
-
- dey
- bne DT1
-
- *
- * Play Music
- *
-
- jsr StartMsT Start music tool
-
- ph4 #Song Load song 'ToolBox'
- jsr LoadSong
-
- lda #True Play song continuously
- sta Loop
- jsr PlaySong
-
- *
- * Change SCB
- *
-
- lda #1
- sta Palette
- ldx #100
- lda #36000
- sta Time
- lda #1
- sta ClrNum1
- lda #6
- sta ClrNum2
-
- CS1 jsr PCycRight
- jsr Delay
- dex
- bne CS1
-
- stz X1
- lda #319
- sta X2
- lda #65
- sta Y
- stz Colour
- lda #1000
- sta Time
-
- CS2 jsr HorLine
- jsr Delay
- lda Time
-
- inc Y
- lda Y
- cmp #200
- bcc CS2
-
- lda #$FFFF
- sta Time
-
- stz Palette
-
- jsr SetSCB0
-
- ldx #5
-
- CS3 jsr Delay
- dex
- bne CS3
-
- lda #Green
- sta Colour
- lda #14
- sta X
- lda #120
- sta Y
- ph2 #Credit1
- jsr Print2
-
- ldx #5
-
- CS4 jsr Delay
- dex
- bne CS4
-
- lda #Blue
- sta Colour
- lda #18
- sta X
- lda #150
- sta Y
- ph2 #Credit2
- jsr Print2
-
- ldx #20
-
- CS5 jsr Delay
- dex
- bne CS5
-
- stz Colour
- jsr ClrScrn
-
- lda #7 Set the title message to a palette
- sta Y for fade in/out effect
- lda #1
- sta Palette
-
- ldx #0
-
- CS6 jsr SetSCB
- inc Y
- lda Y
- cmp #17
- bcc CS6
-
- lda #187 Set the name to different palette
- sta Y to produce shading effect
- lda #2
- sta Palette
-
- lda #$33F
- sta RGB
- lda #4
- sta ClrNum
- jsr SetClr
- lda #$F00
- sta RGB
- lda #15
- sta ClrNum
- jsr SetClr
- jsr SetSCB
-
- inc Y
- inc Palette
-
- lda #$66F
- sta RGB
- lda #4
- sta ClrNum
- jsr SetClr
- lda #$F20
- sta RGB
- lda #15
- sta ClrNum
- jsr SetClr
- jsr SetSCB
-
- inc Y
- inc Palette
-
- lda #$99F
- sta RGB
- lda #4
- sta ClrNum
- jsr SetClr
- lda #$F40
- sta RGB
- lda #15
- sta ClrNum
- jsr SetClr
- jsr SetSCB
-
- inc Y
- inc Palette
-
- lda #$CCF
- sta RGB
- lda #4
- sta ClrNum
- jsr SetClr
- lda #$F60
- sta RGB
- lda #15
- sta ClrNum
- jsr SetClr
- jsr SetSCB
-
- inc Y
- inc Palette
-
- lda #$99F
- sta RGB
- lda #4
- sta ClrNum
- jsr SetClr
- lda #$F80
- sta RGB
- lda #15
- sta ClrNum
- jsr SetClr
- jsr SetSCB
-
- inc Y
- inc Palette
-
- lda #$66F
- sta RGB
- lda #4
- sta ClrNum
- jsr SetClr
- lda #$FA0
- sta RGB
- lda #15
- sta ClrNum
- jsr SetClr
- jsr SetSCB
-
- inc Y
- inc Palette
-
- lda #$33F
- sta RGB
- lda #4
- sta ClrNum
- jsr SetClr
- lda #$FC0
- sta RGB
- lda #15
- sta ClrNum
- jsr SetClr
- jsr SetSCB
-
- *
- * Draw background
- *
-
- stz Palette Change the colour in standard palette
- lda #$F44 for the love to shine
- sta RGB
- lda #8
- sta ClrNum
- jsr SetClr
- lda #$F88
- sta RGB
- inc ClrNum
- jsr SetClr
- lda #$F44
- sta RGB
- inc ClrNum
- jsr SetClr
-
- lda #$80 Change the colour in standard palette
- sta RGB for the colour of the stars
- lda #1
- sta ClrNum
- jsr SetClr
-
- lda #$800
- sta RGB
- lda #$D
- sta ClrNum
- jsr SetClr
-
- lda #10
- sta ShineCnt
-
- lda #7
- sta ClrNum1
- lda #10
- sta ClrNum2
-
- lda #Blue
- sta Colour
- stz X1
- lda #319
- sta X2
- lda #0
- sta Y
- jsr HorLine
-
- lda #24
- sta Y
- jsr HorLine
-
- lda #LBlue
- sta Colour
- lda #1
- sta Y
- jsr HorLine
-
- lda #23
- sta Y
- jsr HorLine
-
- lda #White
- sta Colour
- lda #2
- sta Y
- jsr HorLine
-
- lda #22
- sta Y
- jsr HorLine
-
- lda #182
- sta Y1
- lda #199
- sta Y2
- lda #Blue
- sta Colour
- jsr ClrArea
-
- lda #22
- sta Y1
- lda #181
- sta Y2
-
- lda #White
- sta Colour
- lda #19
- sta X
- lda #187
- sta Y
- ph2 #Name
- jsr Print
-
- stz Time
-
- lda #310
- sta T1
-
- DB1 jsr ShadowOff Rotate stars
- jsr RotStar
-
- lda Time
- clc
- adc #10
- sta Time
- jsr Delay
-
- jsr ShadowOn Display stars
- jsr DsplStar
-
- lda KeyBrd
- and #$FF
- cmp #155
- bne DB2
- brl Done
-
- DB2 jsr MoveStar
- dec T1
- bne DB1
-
- jsr MoveGS
-
- *
- * Print message
- *
-
- lda #1
- sta Palette
-
- stz MsgCount
-
- lda #0
- sta KeyStrb
-
- PrintMsg lda #7
- sta Y1
- lda #16
- sta Y2
- stz Colour
- jsr ClrArea
-
- lda MsgCount
- bne P1
- inc MsgCount
-
- ldx #50
-
- Wait jsr Animate
- dex
- bne Wait
-
- lda #GYellow
- sta GColour
- jsr GrdFill
-
- ldy #12
- ph2 #Msg1
-
- brl Cycle
-
- P1 cmp #1
- bne P2
- inc MsgCount
-
- lda #GGreen
- sta GColour
- jsr GrdFill
-
- ldy #20
- ph2 #Msg2
- brl Cycle
-
- P2 cmp #2
- bne P3
- inc MsgCount
-
- lda #GRed
- sta GColour
- jsr GrdFill
-
- ldy #25
- ph2 #Msg3
- brl Cycle
-
- P3 cmp #3
- bne P4
- inc MsgCount
-
- lda #GGreen
- sta GColour
- jsr GrdFill
-
- ldy #12
- ph2 #Msg4
-
- brl Cycle
-
- P4 cmp #4
- bne P5
- inc MsgCount
-
- lda #GRed
- sta GColour
- jsr GrdFill
-
- ldy #24
- ph2 #Msg5
-
- brl Cycle
-
- P5 cmp #5
- bne P6
- inc MsgCount
-
- ldy #13
- ph2 #Msg6
- brl Scroll
-
- P6 cmp #6
- bne P7
- inc MsgCount
-
- ldy #6
- ph2 #Msg7
- brl Scroll
-
- P7 cmp #7
- bne P8
- inc MsgCount
-
- ldy #22
- ph2 #Msg8
- brl Scroll
-
- P8 cmp #8
- bne P9
- inc MsgCount
-
- ldy #7
- ph2 #Msg9
- brl Scroll
-
- P9 stz MsgCount
-
- ldy #9
- ph2 #Msg10
- brl Scroll
-
- *
- * Colour cycle message
- *
-
- Cycle ldx #14
-
- Fade jsr CycRight
- jsr Animate
- dex
- bne Fade
-
- lda #White
- sta Colour
- sty X
- lda #9
- sta Y
- jsr Print2
-
- ldx #14
-
- C1 jsr CycLeft
- jsr Animate
- dex
- bne C1
-
- ldx #85
-
- Wait1 jsr Animate
- dex
- bne Wait1
-
- ldx #14
-
- C2 jsr CycRight
- jsr Animate
- dex
- bne C2
-
- brl PrintMsg
-
- *
- * Scroll text
- *
-
- Scroll pl2 TextAddr
-
- lda #GCyan
- sta GColour
- jsr GrdFill
-
- sty T1
-
- ldx #78
-
- S1 jsr Animate
-
- stx X
- lda #9
- sta Y
- lda #White
- sta Colour
- ph2 TextAddr
- jsr Print2
-
- ldy #4
-
- S2 jsr Animate
- dey
- bne S2
-
- dex
- cpx T1
- bcs S1
-
- ldx #85
-
- S3 jsr Animate
- dex
- bne S3
-
- ldx #14
-
- S4 jsr CycRight
- jsr Animate
- dex
- bne S4
-
- brl PrintMsg
-
- end
-
- *------------------------------------------------------
- *
- * Animate stars and GS shapes
- *
-
- Animate start
- using SMData
-
- phx
- phy
-
- jsr ShadowOff Plot/Erase the sprites
- jsr EraseGS
- jsr RotStar
- jsr PlotGS
-
- jsr ShadowOn Display the sprites
- jsr DsplGS
- jsr DsplStar
-
- dec ShineCnt
- bne A1
- lda #10
- sta ShineCnt
-
- stz Palette Glow the heart
- jsr PCycLeft
- inc Palette
-
- A1 jsr MoveGS Move the sprites
- jsr MoveStar
-
- lda KeyBrd
- and #$FF
- cmp #155
- bne A2
- brl Done
-
- A2 ply
- plx
-
- rts
-
- end
-
- *------------------------------------------------------
- *
- * Quit program
- *
-
- Done start
- using SMData
-
- lda #0
- sta KeyStrb
-
- jsr StopSong Stop the song
- jsr ShutDMsT Shut down music tool
-
- jsr Text
- jsr Shutdown Shut down
-
- lda #0 Indicates no error
-
- Quit QuitData
-
- end
-
- *------------------------------------------------------
- *
- * Rotate stars
- *
-
- RotStar start
- using MainData
-
- ldx #78
-
- RS1 lda StarX,x Erase old stars
- sta X
- lda OldStarY,x
- sta Y
- jsr Erase2
-
- lda StarY,x Plot new stars
- sta Y
- lda StarClr,x
- sta Colour
- jsr Plot
-
- dex
- dex
- bpl RS1
-
- rts
-
- end
-
- *
- * Display stars
- *
-
- DsplStar start
- using MainData
-
- ldx #78
-
- DS1 lda StarX,x Display old stars
- sta X
- lda OldStarY,x
- sta Y
- jsr Display
-
- lda StarY,x Display new stars
- sta Y
- jsr Display
-
- dex
- dex
- bpl DS1
-
- rts
-
- end
-
- *
- * Move stars
- *
-
- MoveStar start
- using MainData
- using SMData
-
- ldx #78
-
- MS1 lda StarY,x
- sta OldStarY,x
- clc
- adc StarMove,x
- cmp #181
- bcc MS4
-
- ldy #3
- stz T2
- jsr Random Reposition the star, and randomize
- lda RndFlag the star movement
- bne MS2
- iny
- iny
-
- lda #4
- sta T2
-
- MS2 tya
- sta StarMove,x
-
- ldy T2
- lda ClrTable,y
- tay
- jsr Random
- lda RndFlag
- bne MS3
-
- ldy T2
- lda ClrTable+2,y
- tay
-
- MS3 tya
- sta StarClr,x
-
- lda StarTop,x
-
- MS4 sta StarY,x
- dex
- dex
- bpl MS1
-
- rts
-
- end
-
- *------------------------------------------------------
- *
- * Animate GS shape
- *
-
- *
- * Plot GS
- *
-
- PlotGS start
- using MainData
-
- PlotS lda SX Plot a 'S'
- sta X
- lda SY
- sta Y
- ph2 #S
- ph2 #SMask
- jsr PlotShp2
-
- PlotG lda GX Plot a 'G'
- sta X
- lda GY
- sta Y
- ph2 #G
- ph2 #GMask
- ph2 #GBackGrd
- jsr PlotShp
-
- PlotLove lda LoveX
- sta X
- lda LoveY
- sta Y
- ph2 #Love
- ph2 #LoveMask
- ph2 #LoveBGrd
- jsr PlotShp
-
- rts
-
- end
-
- *
- * Erase GS
- *
-
- EraseGS start
- using MainData
-
- lda OldLoveX Erase Love
- sta X
- lda OldLoveY
- sta Y
- ph2 #LoveBGrd
- jsr ErsShp
-
- lda OldGX Erase 'G'
- sta X
- lda OldGY
- sta Y
- ph2 #GBackGrd
- jsr ErsShp
-
- lda OldSX Erase 'S'
- sta X
- lda OldSY
- sta Y
- jsr ErsShp2
-
- rts
-
- end
-
- *
- * Display GS
- *
-
- DsplGS start
- using MainData
-
- lda GX Display 'G'
- sta X
- lda GY
- sta Y
- jsr DsplShp2
-
- lda SX Display 'S'
- sta X
- lda SY
- sta Y
- jsr DsplShp2
-
- lda LoveX Display heart
- sta X
- lda LoveY
- sta Y
- jsr DsplShp2
-
- rts
-
- end
-
- *
- * Move GS shape
- *
-
- MoveGS start
- using MainData
-
- MoveG lda GX Move 'G'
- sta OldGX
- lda GY
- sta OldGY
-
- lda GXDir
- beq MG1
-
- dec GX
- dec GX
- lda GX
- cmp #4
- bcs MG2
- stz GXDir
- bra MG2
-
- MG1 inc GX
- inc GX
- lda GX
- cmp #300
- bcc MG2
- inc GXDir
-
- MG2 lda GYDir
- beq MG3
-
- dec GY
- dec GY
- lda GY
- cmp #27
- bcs MoveS
- stz GYDir
- bra MoveS
-
- MG3 inc GY
- inc GY
- lda GY
- cmp #160
- bcc MoveS
- inc GYDir
-
- MoveS lda SX Move 'S'
- sta OldSX
- lda SY
- sta OldSY
-
- lda SXDir
- beq MS1
-
- dec SX
- dec SX
- lda SX
- cmp #4
- bcs MS2
- stz SXDir
- bra MS2
-
- MS1 inc SX
- inc SX
- lda SX
- cmp #300
- bcc MS2
- inc SXDir
-
- MS2 lda SYDir
- beq MS3
-
- dec SY
- lda SY
- cmp #26
- bcs MoveLove
- stz SYDir
- bra MoveLove
-
- MS3 inc SY
- lda SY
- cmp #160
- bcc MoveLove
- inc SYDir
-
- MoveLove lda LoveX Move heart
- sta OldLoveX
- lda LoveY
- sta OldLoveY
-
- inc LoveX
- inc LoveX
- lda LoveX
- cmp #320
- bcc ML1
- stz LoveX
-
- ML1 lda LoveYDir
- beq ML2
-
- dec LoveY
- lda LoveY
- cmp #22
- bcs Done
- stz LoveYDir
- bra Done
-
- ML2 inc LoveY
- lda LoveY
- cmp #162
- bcc Done
- inc LoveYDir
-
- Done rts
-
- end
-
- copy SM.Lib
-
- *------------------------------------------------------
- *
- * Main program data
- *
-
- MainData data
-
- Song dc h'0D',c'Music/Toolbox'
-
- Intro dc c'Super Magic 320 Demo',h'00'
- Credit1 dc c'Graphics by Lim Thye Chean',h'00'
- Credit2 dc c'Music (ToolBox) by FTA',h'00'
- Msg1 dc c'Lim Thye Chean, the GS Lover',h'00'
- Msg2 dc c'proudly presents...',h'00'
- Msg3 dc c'SUPER MAGIC 320',h'00'
- Msg4 dc c'Release the power of your GS',h'00'
- Msg5 dc c'Apple II Forever',h'00'
- Msg6 dc c'Introducing Super Magic 320 ',h'00'
- Msg7 dc c'The graphics and animation library ',h'00'
- Msg8 dc c'for the rest of us ',h'00'
- Msg9 dc c'If you like this cool little demo ',h'00'
- Msg10 dc c'You can write one yourself now! ',h'00'
-
- Name dc c'LIM THYE CHEAN (1991)',h'00'
-
- G dc h'000FFFFFFFFFFFFFFE00'
- dc h'00444444444444444FE0'
- dc h'044444444444444444E0'
- dc h'044444444444444444F0'
- dc h'044444444444444444F0'
- dc h'0BBBBF00000000BBBBF0'
- dc h'0BBBBF00000000000000'
- dc h'0BBBBF00000000000000'
- dc h'0BBBBF00000000000000'
- dc h'0EEEEF0000FFFFFFFFF0'
- dc h'0EEEEF0000EEEEEEEEF0'
- dc h'0EEEEF0000EEEEEEEEF0'
- dc h'0EEEEE0000EEEEEEEEF0'
- dc h'02222E000022222222F0'
- dc h'02222E000000002222F0'
- dc h'02222E000000002222F0'
- dc h'022222EEEEEEE22222E0'
- dc h'066666666666666666E0'
- dc h'06666666666666666610'
- dc h'00666666666666666600'
- dc h'00066666666666666000'
-
- GMask dc h'FFF000000000000000FF'
- dc h'FF00000000000000000F'
- dc h'F000000000000000000F'
- dc h'F000000000000000000F'
- dc h'F000000000000000000F'
- dc h'F00000FFFFFFFF00000F'
- dc h'F00000FFFFFFFFFFFFFF'
- dc h'F00000FFFFFFFFFFFFFF'
- dc h'F00000FFFFFFFFFFFFFF'
- dc h'F00000FFFF000000000F'
- dc h'F00000FFFF000000000F'
- dc h'F00000FFFF000000000F'
- dc h'F00000FFFF000000000F'
- dc h'F00000FFFF000000000F'
- dc h'F00000FFFFFFFF00000F'
- dc h'F00000FFFFFFFF00000F'
- dc h'F000000000000000000F'
- dc h'F000000000000000000F'
- dc h'F000000000000000000F'
- dc h'FF0000000000000000FF'
- dc h'FFF00000000000000FFF'
-
- GBackGrd ds 210
-
- S dc h'000FFFFFFFFFFFFFFE00'
- dc h'00444444444444444FE0'
- dc h'044444444444444444E0'
- dc h'044444444444444444F0'
- dc h'044444444444444444F0'
- dc h'0BBBBF00000000BBBBF0'
- dc h'0BBBBE00000000000000'
- dc h'0BBBBB10000000000000'
- dc h'0BBBBBBBBBBBBBBBE100'
- dc h'0EEEEEEEEEEEEEEEEF10'
- dc h'0EEEEEEEEEEEEEEEEEF0'
- dc h'01EEEEEEEEEEEEEEEEE0'
- dc h'001EEEEEEEEEEEEEEEF0'
- dc h'000000000000002222F0'
- dc h'0EEEEE000000002222F0'
- dc h'02222E000000002222F0'
- dc h'022222EEEEEEEE2222F0'
- dc h'066666666666666666F0'
- dc h'066666666666666666E0'
- dc h'00666666666666666600'
- dc h'00066666666666666000'
-
- SMask dc h'FFF000000000000000FF'
- dc h'FF00000000000000000F'
- dc h'F000000000000000000F'
- dc h'F000000000000000000F'
- dc h'F000000000000000000F'
- dc h'F00000FFFFFFFF00000F'
- dc h'F00000FFFFFFFFFFFFFF'
- dc h'F000000FFFFFFFFFFFFF'
- dc h'F00000000000000000FF'
- dc h'F000000000000000000F'
- dc h'F000000000000000000F'
- dc h'F000000000000000000F'
- dc h'FF00000000000000000F'
- dc h'FFFFFFFFFFFFFF00000F'
- dc h'F00000FFFFFFFF00000F'
- dc h'F00000FFFFFFFF00000F'
- dc h'F000000000000000000F'
- dc h'F000000000000000000F'
- dc h'F000000000000000000F'
- dc h'FF0000000000000000FF'
- dc h'FFF00000000000000FFF'
-
- Love dc h'00000000000000000000'
- dc h'00000000000000000000'
- dc h'00000000000000000000'
- dc h'00077770000007777000'
- dc h'07FF777700007FF77770'
- dc h'7F7777777777F7777777'
- dc h'77777777777777777777'
- dc h'77777777777777777777'
- dc h'77777777777777777777'
- dc h'77777777777777777777'
- dc h'77777777777777777777'
- dc h'07777777777777777770'
- dc h'07777777777777777770'
- dc h'00777777777777777700'
- dc h'00077777777777777000'
- dc h'00007777777777770000'
- dc h'00000777777777700000'
- dc h'00000007777770000000'
- dc h'00000000777700000000'
- dc h'00000000000000000000'
- dc h'00000000000000000000'
-
- LoveMask dc h'FFFFFFFFFFFFFFFFFFFF'
- dc h'FFFFFFFFFFFFFFFFFFFF'
- dc h'FFFFFFFFFFFFFFFFFFFF'
- dc h'FFF0000FFFFFF0000FFF'
- dc h'F0000000FFFF0000000F'
- dc h'00000000000000000000'
- dc h'00000000000000000000'
- dc h'00000000000000000000'
- dc h'00000000000000000000'
- dc h'00000000000000000000'
- dc h'00000000000000000000'
- dc h'F000000000000000000F'
- dc h'F000000000000000000F'
- dc h'FF0000000000000000FF'
- dc h'FFF00000000000000FFF'
- dc h'FFFF000000000000FFFF'
- dc h'FFFFF0000000000FFFFF'
- dc h'FFFFFFF000000FFFFFFF'
- dc h'FFFFFFFF0000FFFFFFFF'
- dc h'FFFFFFFFFFFFFFFFFFFF'
- dc h'FFFFFFFFFFFFFFFFFFFF'
-
- LoveBGrd ds 210
-
- StarX ds 80
- StarY dc h'61002E0059005100980021003B0058003F007B00'
- dc h'320043008F007100620036008D002C0042005A00'
- dc h'28002300510068009900580084003A0073004100'
- dc h'9900390034005600780090001F00230045006700'
- OldStarY dc h'61002E0059005100980021003B0058003F007B00'
- dc h'320043008F007100620036008D002C0042005A00'
- dc h'28002300510068009900580084003A0073004100'
- dc h'9900390034005600780090001F00230045006700'
- StarTop ds 80
- StarMove ds 80
- StarClr ds 80
-
- ClrTable dc h'1111DDDDFFFF4444'
-
- end
-