|
|
This page contains no introduction. |
Cheat Mode#
Type headbutt during the scrolling credits and wait until the credits begin to roll for the second time. You should see "HILLBERT" replaced with "HEADBUTT", followed by a message confirming correct code entry. You can now skip levels by pressing ESC.
Unused Text#
Present at 0x264F9 on Disk 2:
hello this is a test
Present at 0x87A58 on Disk 3:
FOR OUTRUN EUROPA, IN A SHOP NEAR YOU SOON...
The game does tell you to look out for Back to the Future Part III instead.
Uncompiled Source Code#
A whole lot of uncompiled source code scattered all over disk 2 and the end of disk 3.
call cas_in_close ;close it
.less
ld hl,&c000
ld de,here
ld bc,end_here-here
ldir
pop bc
ld (length+1),bc
jp this_place
.this_place
;; ** RESTORE DATA WHICH WOULD HAVE BEEN OVERWRITTEN BY
FIRMWARE **
;; !!EXAMPLE!!
ld bc,&7fc4
out (c),c
ld hl,&4000
ld d,l
ld e,l
ld bc,&0040
ldir
ld de,&a700
ld b,&c0-&a7
ldir
ld bc,&7fc0
out (c),c
ld hl,&100
.address ld de,0
.length ld bc,0
ldir
.stack ld sp,0 ;old stack back and...
.stack ld sp,0 ;old stack back and...
ret ;...exit to program!!
.length defw 0
.filename
defb "BTTF2.XXX"
.end_filename
.end_here
dress
nolist
write"loader"
let mode=0 ;screLE!!
ld bc,&7fc4
out (c),c
ld hl,&4000
ld d,l
ld e,l
ld bc,&0040
ldir
ld de,&a700
ld b,&c0-&a7
ldir
ld bc,&7fc0
out (c),c
ld bc,&7fc1
out (c),c
ld hl,(length-here+&c000)
ld bc,&7fc0
out (c),c
ld c,l
ld b,h
ld hl,&100
.address ld de,0
.stack ld sp,0 ;old stack back and...
ret ;...exit to program!!
.length defw 0
.length2 defw 0
.filename
defb "BTTF2.XXX"
.end_filename
.end_here
write"loader"
let mode=0 ;scree+&4000)
ldir
ld hl,(length2-here+&4000)
ld bc,&7fc0
out (c),c
.marker ld a,0
or a
jp z,end_it
ld c,l
ld b,h
ld hl,&8000
ldir
.end_it
ld bc,&7fc4
out (c),c
;turn of disc error messages
ld a,&c9
ld (txt_output),a ;prevent printing of text
characters
;don't get error messages
corrupting screen
;; ** LOAD FILE USING FIRMWARE **
ld b,end_filename-filename ;length of filename
ld hl,filename-here+&c000 ;address of
filename in memory
ld e,l
ld d,h
call cas_in_open ;open file
push bc
ld hl,&100 ;HL = load address, BC
= length of file
call cas_in_direct ;r
;...exit to program!!
.filename
defb "BTTF2.XXX"
.end_filename
.end_here
let mode=0 ;screth+1),bc
jp this_place
.this_place
;; ** RESTORE DATA WHICH WOULD HAVE BEEN OVERWRITTEN BY
FIRMWARE **
;; !!EXAMPLE!!
ld bc,&7fc4
out (c),c
ld hl,&4000
ld d,l
ld e,l
ld bc,&0040
ldir
ld de,&a700
ld b,&c0-&a7
ldir
ld bc,&7fc0
out (c),c
ld hl,&100
.address ld de,0
.length ld bc,0
ldir
.stack ld sp,0 ;old stack back and...
BTTF2.XXX
de=0 ;scre
isable ;disable lower rom
;; ** INITIALISE DISK ROM FOR LOADING/SAVING **
ld c,7 ;disk rom
ld de,&0040 ;lowest useable byte of
memory
ld hl,&b0ff ;highest useable byte of
memory
call kl_init_back ;initialise disk rom
xor a ;select drive (A)
ld (&ac00),a
ld a,&ff
ld (&be78),a ;turn of disc error
messages
ld a,&c9
ld (txt_output),a ;prevent printing of text
characters
BTTF2.XXX
d_here
let mode=0 ;scre
OF **
;; ** FIRMWARE **
.here
ld (stack+1),sp ;save stack used by program
ld sp,&c000 ;new stack used by firmware
and load routines
;; ** SAVE DATA OVERWRITTEN BY FIRMWARE **
;; !!EXAMPLE!!
ld hl,(&ae72)
ld (address+1),hl
ld hl,(&ae74)
ld (end_filename-3),hl
ld a,(&ae76)
ld (end_filename-1),a
ld hl,&8000
ld a,(&ae73)
cp &80
jp nz,next
ld hl,&4000
.next
ld (addr+1),hl
ld bc,&7fc4
out (c),c
ld hl,&0000
ld de,&4000
ld bc,&0040
ldir
ld hl, OF **
;; ** FIRMWARE **
ld (stack+1),sp ;save stack used by program
ld sp,&c000 ;new stack used by firmware
and load routines
;; ** SAVE DATA OVERWRITTEN BY FIRMWARE **
;; !!EXAMPLE!!
ld hl,(&ae72)
ld (address+1),hl
ld hl,(&ae74)
ld (end_filename-3),hl
ld a,(&ae76)
ld (end_filename-1),a
ld a,&80
ld a,(&ae73)
cp &80
jr nz,next
ld a,&40
.next
ld (addr+2),a
ld bc,&7fc4
out (c),c
ld hl,&0000
ld de,&4000
ld bc,&0040
ldir
ld hl,&a800
ld b,,c
.stack ld sp,0 ;old stack back and...
ret ;...exit to program!!
.length defw 0
.length2 defw 0
.filename
defb "BTTF2.XXX"
.end_filename
.end_here
write"loader"
let mode=0 ;scree+&4000)
ldir
ld hl,(length2-here+&4000)
ld bc,&7fc0
out (c),c
.marker ld a,0
or a
jp z,end_it
ld c,l
ld b,h
ld hl,&8000
ldir
.end_it
ld bc,&7fc4
out (c),c
ld hl,&4000+&1900+&40
.addr ld de,&8000
ld bc,&1700
ldir
ld bc,&7fc0
out (c)
BTTF2 DAT
|
The Back to the Future series | |
|---|---|
|
MSX |
|
|
ZX Spectrum |
|
|
NES |
|
|
Commodore 64 |
|
|
DOS |
|
|
Amstrad CPC |
|
|
Atari ST |
|
|
Amiga |
|
|
Master System |
|
|
SNES |
|
|
Genesis |
|
|
Windows, Wii, PlayStation 4, Xbox One, Mac OS X, iOS, Xbox 360, PlayStation 3 |
|