An updated version of the Genesis original, featuring updated graphics, sampled audio and chunkier framerates.
Possibly Drunk Developer Message#
Hidden on all of the disks at 0x6E2E0:
Desrt Strike Is
Brought to You
From The Ea In
House Possy
Other Wise Know
As ProgStaff
This Game Is
Desined to be
Unhackerble
because There is
no need to hack
it. If you whant
to pirate it
Just drag the
workbentch icon
to another disk
drive, and copy
(Source: pants)
Source Code Remnants#
Starting at 0x68DD on the first disk:
#4,a0
rts
Section FileData,data_c
DiskData: incbin "\desert\graphics\disk\insert.crn"
DiskErrDat: incbin "\desert\graphics\disk\DiskErr8.crn"
EVEN
NumData: incbin "\desert\graphics\disk\numbers.dat"
DiskPal: dc.w $000
dc.w $6a6
dc.w $595
dc.w $484
dc.w $373
dc.w $262
dc.w $151
dc.w $040
dc.w $030
dc.w $020
dc.w $010
dc.w $000
dc.w $778
dc.w $889
dc.w $99a
dc.w $aab
dc.w $bbc
dc.w $ccd
dc.w $dde
dc.w $eef
dc.w $fff
dc.w $320
dc.w $210
dc.w $db7
dc.w $cb6
dc.w $ba5
dc.w $a94
dc.w $983
dc.w $872
dc.w $761
dc.w $650
dc.w $430
ErrPal: dc.w $000
dc.w $024
dc.w $555
dc.w $777
dc.w $a50
dc.w $c73
dc.w $e95
dc.w $ddd
CopList: dc.w bpl1pth,$0000 ;screen bitplane pointers
dc.w bpl1ptl,$0000 ;updated by screen flip routine
dc.w bpl2pth,$0000
dc.w bpl2ptl,$0000
dc.w bpl3pth,$0000
dc.w bpl3ptl,$0000
dc.w bpl4pth,$0000
dc.w bpl4ptl,$0000
CopPlane5 dc.w bpl5pth,$0000
dc.w bpl5ptl,$0000
dc.w spr0pth,$0000 ;sprite pointers inserlised
dc.w spr0ptl,$0000 ;in init
dc.w spr1pth,$0000
dc.w spr1ptl,$0000
dc.w spr2pth,$0000
dc.w spr2ptl,$0000
dc.w spr3pth,$0000
dc.w spr3ptl,$0000
dc.w spr4pth,$0000
dc.w spr4ptl,$0000
dc.w spr5pth,$0000
dc.w spr5ptl,$0000
dc.w spr6pth,$0000
dc.w spr6ptl,$0000
dc.w spr7pth,$0000
dc.w spr7ptl,$0000
if 0
BplCon: dc.w bplcon0,NumPlanesE*$1000+$200 ;I tend to put all my screen defintions in the copper
dc.w bplcon1,$0000 ;its less code and I can modify them with snasm eserly
dc.w bplcon2,$001f
ScreenMods: dc.w bpl1mod,PlaneWideE*(NumPlanesE-1)
dc.w bpl2mod,PlaneWideE*(NumPlanesE-1)
dc.w ddfstrt,$0068 ;$002a
dc.w ddfstop,$00a2 ;$00d2
dc.w diwstrt,$7aad
dc.w diwstop,$c4f5
endc
CopperCols: dc.w color00,$fff
dc.w color01,$fff
dc.w color02,$000
dc.w color03,$000
dc.w color04,$000
dc.w color05,$000
dc.w color06,$000
dc.w color07,$000
dc.w color08,$000
dc.w color09,$000
dc.w color10,$000
dc.w color11,$000
dc.w color12,$000
dc.w color13,$000
dc.w color14,$000
dc.w color15,$000
dc.w color16,$000
dc.w color17,$000
dc.w color18,$000
dc.w color19,$000
dc.w color20,$000
dc.w color21,$000
dc.w color22,$000
dc.w color23,$000
dc.w color24,$000
dc.w color25,$000
dc.w color26,$000
dc.w color27,$000
dc.w color28,$000
dc.w color29,$000
dc.w color30,$000
dc.w color31,$000
; dc.w $ffdf,$fffe
; dc.w $3301,$ff00
; dc.w intreq,$8010
dc.w $ffff,$fffe ;a wait forever is the end of the copper list
DumSpr: dc.l 0
CopListEnd:
Section FileBss,bss_c
;-----------------------------------------------------------------------------------------------------------------------------
AutoOff: ds.w 1 ;turn of motor after load 0 yes 1 = no
FileSize: ds.l 1
FileOffset: ds.l 1
DiskNo: ds.b 1
FileNo: ds.b 1
DriveNo: ds.b 1
CompFlags: ds.b 1
InDisk: ds.w 1
SectNo: ds.w 1
DataPtr: ds.l 1
DataStart: ds.l 1
BytesToLoad: ds.l 1
BytesRead: ds.l 1
SecondBlock: ds.l 1
SkipBytes: ds.w 1
CopSave: ds.l 1
DmaSave: ds.w 1
TrackBuff: ds.l 1
OldCopper: ds.l 1
Section FileData,data_c
CurrDisk: dc.b $80,-1,-1,-1 ;tables of what disk is in what drive
;-ve means no disk in drive !!
GotDisk: dc.b -1,-1,-1,-1
DirTbl:
dc.l Dir1
dc.l Dir2
dc.l Dir3
Section FileCode,code_c
;--------------------------------------------------------------------------------------------------------------------------
; Rob Northens disk acess code !
include \desert\source\northen\diskior.s
rsreset
DirOffset: rs.l 1
DirFileSize: rs.l 1
DirFullSize: rs.l 1
DirFlags: rs.w 1
DirPad: rs.w 1
DirSizeOf: rs.b 0
Section FileBss,bss_c
Dir1: ds.b DirSizeOf*32
Dir2: ds.b DirSizeOf*32
Dir3: ds.b DirSizeOf*32
SectorBuff: ds.b 512
Endofbss: ds.b 0
elseif LOAD_MEDIA="FILE"
;--------------------------------------------------------------------------------------------------------------------------
; FileFrendly load system comapaterble with current loading system
; uses robnorhtens dosior.s
move.w d0,d1
lsr.w #6,d1
and.w #$fc,d1
move.l DirTbl(pc,d1),a0
and.w #$ff,d0
asl.w #2,d0
move.l (a0,d0),a0
move.l #0,d0
move.l a1,-(sp)
bsr dosioR
move.l (sp)+,a1
move.l a1,a0
bsr Unpack
rts
DirTbl: dc.l DirTbl1,DirTbl2
DirTbl1: dc.l .n0
dc.l .n1
dc.l .n2
dc.l .n3
dc.l .n4
dc.l .n5
dc.l .n6
dc.l .n7
dc.l .n8
dc.l .n9
.n0: dc.b "load.abs",0
.n1: dc.b "loader.abs",0
.n2: dc.b "world0.map",0
.n3: dc.b "world0.blk",0
.n4: dc.b "worldd.amg",0
.n6: dc.b "gamesnd.amg",0
.n7: dc.b "wldgfxd.amg",0
.n8: dc.b "desert.rel",0
.n9: dc.b "menu.rel",0
EVEN
DirTbl2: dc.l .n0
dc.l .n1
dc.l .n2
dc.l .n3
dc.l .n4
dc.l .n5
dc.l .n6
dc.l .n7
dc.l .n8
dc.l .n9
.n0: dc.b "popup1.rel",0
.n1: dc.b "popup2.rel",0
.n2: dc.b "popup3.rel",0
.n3: dc.b "popup5.rel",0
.n4: dc.b "popup6.rel",0
.n5: dc.b "brroom.rel",0
.n6: dc.b "death.rel",0
.n7: dc.b "panels.rel",0
.n8: dc.b "Winner.rel",0
.n9: dc.b "InstArc.dmc",0
EVEN
MotorOff:
InitDrives: rts
Build Dates#
At the beginning of the disks at 0x10:
Diskette Number |
Code |
|---|---|
Disk 1 |
|
Disk 2 |
|
Disk 3 |
|
The demo version of the game which appeared on CU Amiga Magazine Coverdisk #57 (May 1993 issue) uses this build date code:
EOA0 DATE: 18/3/1993
It also includes the exact code fragment as the final game.
|
The Strike series | |
|---|---|
|
Amiga |
|
|
Genesis |
Desert Strike: Return to the Gulf • Jungle Strike • Urban Strike |
|
Sega Master System |
|
|
Game Gear |
|
|
SNES |
Desert Strike: Return to the Gulf • Jungle Strike • Urban Strike |
|
Game Boy |
|
|
PlayStation |
|
|
Nintendo 64 |
|
|
Game Boy Advance |
|