Taky vam pripada kruh kulaty a kontejner plny?

  • Příspěvků:
    6062
  • Založil:
    robotech
  • Založeno:
    29.11.2005
  • Moderuje:
Uživatel není registrován - doporučujeme se zaregistrovat, registrace má mnoho výhod a obsahuje další prvky, které nejsou anonymům dovoleny.



Kluby nic neresi, vyresi to motorova pila.
obrazek


Absolutely useless newbie´s chart:
1. Důdač (byl by to dar lidstvu, kdyby se tenkrat nesparila ovecka Dolly se sudem mocuvky a on se nenarodi)
2. Vyymejj (horsi jak mor)
3. Lemra-V (partner od ovecky


ILUZE JE BUH!

TOTO JE KONTEJNER, NE NEJAKA ZKURVENA VEREJNA NUDAPLAZ, KDE MUZE KAZDEJ CURAK VEREJNE ONANOVAT!!!
19.12.2014 09:15:06
Ondra_T Odpovědět Permalink odkaz na tento post Tento příspěvek stojí za přečtení Tento příspěvek nebyl pochválen 0x
www.ondrej-tobias.cz (fotky z akcí od roku 2003)..
obrazek
1.12.2014 17:29:22
Ondra_T Odpovědět Permalink odkaz na tento post Tento příspěvek stojí za přečtení Tento příspěvek nebyl pochválen 1x
www.ondrej-tobias.cz (fotky z akcí od roku 2003)..
obrazek
2.10.2014 16:09:37
pepe Odpovědět Permalink odkaz na tento post Tento příspěvek stojí za přečtení Tento příspěvek nebyl pochválen 0x
Ochutnej můj zvukomrak! Peter Pea @ Soundcloud

cicel

A dělá ti to dobře???
12.9.2014 21:03:14
cecil Odpovědět Permalink odkaz na tento post Tento příspěvek stojí za přečtení Tento příspěvek nebyl pochválen 0x
tady to vypadá na návrat oživlých mrtvol
9.9.2014 14:15:06
RoBoTech Odpovědět Permalink odkaz na tento post Tento příspěvek stojí za přečtení Tento příspěvek nebyl pochválen 1x
http://www.idj.cz/robotech/

mrdky!!!

obrazek
Neregistrovaný: iluze
24.8.2014 11:41:03
iluze Odpovědět Permalink odkaz na tento post Tento příspěvek stojí za přečtení Tento příspěvek nebyl pochválen 0x
Eestimaal
jj! kde jinde?
23.8.2014 15:06:35
pan_gazpacho Odpovědět Permalink odkaz na tento post Tento příspěvek stojí za přečtení Tento příspěvek nebyl pochválen 0x
http://gazpacho.wz.cz
přišel ses tu vyfňukat?
22.8.2014 18:40:46
iluze Odpovědět Permalink odkaz na tento post Tento příspěvek stojí za přečtení Tento příspěvek nebyl pochválen 3x
Eestimaal

?

Kam vsichni zmizeli? Proc uz to tady neni jako pred 14 lety?
25.7.2014 19:34:36
pepe Odpovědět Permalink odkaz na tento post Tento příspěvek stojí za přečtení Tento příspěvek nebyl pochválen 0x
Ochutnej můj zvukomrak! Peter Pea @ Soundcloud

test

ip adresy.

ps: zelené hovno sux
24.12.2013 17:06:06
Ondra_T Odpovědět Permalink odkaz na tento post Tento příspěvek stojí za přečtení Tento příspěvek nebyl pochválen 0x
www.ondrej-tobias.cz (fotky z akcí od roku 2003)..
obrazek
27.11.2013 17:53:51
Ondra_T Odpovědět Permalink odkaz na tento post Tento příspěvek stojí za přečtení Tento příspěvek nebyl pochválen 1x
www.ondrej-tobias.cz (fotky z akcí od roku 2003)..

kuk

obrazek
24.11.2013 19:00:26
pepe Odpovědět Permalink odkaz na tento post Tento příspěvek stojí za přečtení Tento příspěvek nebyl pochválen 2x
Ochutnej můj zvukomrak! Peter Pea @ Soundcloud

pro debila

obrazek
14.10.2013 00:37:21
pepe Odpovědět Permalink odkaz na tento post Tento příspěvek stojí za přečtení Tento příspěvek nebyl pochválen 1x
Ochutnej můj zvukomrak! Peter Pea @ Soundcloud

pro fanoušky assembleru, je tam pár super elegantních postupů

;
;(C) 1983,1984,1999,2000 Matthew Smith - all rights reserved
;
;Disassembly of Manic Miner, done by John Elliott with the Dazzlestar
;disassembler under CP/M.
;
;Note: I have deleted most of the data structures (from the title screen onward)
; as the format of these areas is documented elsewhere.
;
; Compared to my JSW disassembly, this is very thinly commented indeed; I've
; only looked at bits which relate to the patch I did or which appear in
; the embedded source code.
;

SCREEN EQU 4000h
ATTR EQU 5800h
WK_ATTR EQU 5C00h ;5C00h: Working attribute buffer. At 5C00h in JSW
BK_ATTR EQU 5E00h ;5E00h: Background attribute buffer. At 5E00h in JSW
T6000 EQU 6000h
T7000 EQU 7000h

SP_SWFS EQU 0B2E0h ;Room 0 vguard: SwordFish
SP_PEDE EQU 0B6E0h ;Room 1 vguard: Pedestal
SP_FOOT EQU 0BAE0h ;Room 2 vguard: Foot

ORG 8000h
;
; Blank spaces in Manic Miner tend to fill up with source code. I have
; rendered these as DS directives and put the source code in comments. This
; means the code won't assemble to the same result, but it's much more
; readable.
;
; This is the source for data at T846E.
;
; [17-4-2004] Commented this section and gave it labels, based on Andrew
; Broad's room format
;
;
ROOM_NAME: DEFS 20h ;8000: Room name
; ... 50,171,192,50,48,68
; DB 50,48,58,50,171,192,50,136,137
ELEM_AIR: DEFS 9 ;8020: Air
ELEM_WATER: DEFS 9 ;8029: Water
ELEM_CRUMBLY: DEFS 9 ;8032: Crumbling floor
ELEM_EARTH: DEFS 9 ;803B: Earth
; DB 50,136,137,50,114,115,50,76,77
ELEM_CONVEY: DEFS 9 ;8044: Conveyor
ELEM_FIRE1: DEFS 9 ;804D: Fire (1)
ELEM_FIRE2: DEFS 9 ;8056: Fire (2)
ELEM_SWITCH DEFS 9 ;805F: Switch
WILLY_Y: DEFB 0 ;8068: Willy vertical position, pixels
WILLY_FRAME: DEFB 0 ;8069: Willy's current frame
WILLY_DIR: DEFB 0 ;806A: Which way does Willy face?
AIRBORNE: DEFB 0 ;806B: Willy jumping?
WILLY_POS: DEFW 0 ;806C: Willy position in attribute file
JUMP_DIST: DEFB 0 ;806E: Jump distance
CONVEY_DIR: DEFB 0 ;806F: Conveyor direction
CONVEY_POS: DEFW 0 ;8070: Conveyor animation position
CONVEY_LEN: DEFB 0 ;8072: Conveyor length
BORDER: DEFB 0 ;8073: Border
PORTAL_CLOSED: DEFB 0 ;8074: Attribute of last item drawn
ITEMS: DEFS 25 ;8075: Up to five items to collect
; 92,50,38,484
; DB 50,38,4
DEFB 0FFh ;808E: End of item table
PORTAL_ATTR: DEFB 0 ;808F: Portal attribute
PORTAL_IMAGE: DEFS 32 ;8090: Portal image
; 50,171,192,50,48,68'
; DB 50,48,
PORTAL_XY: DEFW 0,0 ;80B0: Portal position
ITEM_GRAPHIC: DEFW 2C30h ;80B4: Item image
DEFW 3731h
DEFW 2C31h
DEFW 3931h
AIR_MAJOR: DEFB 0 ;80BC: Air supply + 32
AIR_MINOR: DEFB 0 ;80BD: Air pixel adjustment
HGUARDS: DEFS 28 ;80BE: Horizontal guardians
; 50,136,137
DEFB 0FFh ; DB 50,136,137,

B80DB: DEFB 0 ;80DB: Used when moving Eugene and Kong
EUGHGT: DEFB 0 ;80DC: Height of Eugene
VGUARDS: DEFS 20 ;80DD: Vertical guardians
; 114,115,50,76,77
; B 50,76,77,50,171,203,50,38,51
DEFB 0FFh ; DB 50,38,51,50,171,203,50,51,64
;
; 'special' graphic and guardian graphics
;
DEFS 270 ; DB 50,51,64,50,171,203,50,128,129
; DB 50,128,129,50,102,103,50,86,87
; DB 50,64,65,50,128,171,50,32,43
; DB 50,32,43,50,128,171,50,43,51
; DB 50,43,51,50,128,171,50,128,129
; DB 50,128,129,50,102
MANDAT: DEFB 6,0,3Eh,0,7Ch,0,34h,0,3Eh,0,3Ch,0,18h,0,3Ch,0,7Eh,0,7Eh
DEFB 0,0F7h,0,0FBh,0,3Ch,0,76h,0,6Eh,0,77h,0,1,80h,0Fh,80h,1Fh
DEFB 0,0Dh,0,0Fh,80h,0Fh,0,6,0,0Fh,0,1Bh,80h,1Bh,80h,1Bh,80h
DEFB 1Dh,80h,0Fh,0,6,0,6,0,7,0
DEFB 0,60h,3,0E0h,7,0C0h,3,40h,3,0E0h,3,0C0h,1,80h,3,0C0h,7
DEFB 0E0h,7,0E0h,0Fh,70h,0Fh,0B0h,3,0C0h,7,60h,6,0E0h,7,70h
DEFB 0,18h,0,0F8h,1,0F0h,0,0D0h,0,0F8h,0,0F0h,0,60h,0,0F0h,1
DEFB 0F8h,3,0FCh,7,0FEh,6,0F6h,0,0F8h,1,0DAh,3,0Eh,3,84h,18h
DEFB 0,1Fh,0,0Fh,80h,0Bh,0,1Fh,0,0Fh,0,6,0,0Fh,0,1Fh,80h,3Fh
DEFB 0C0h,7Fh,0E0h,6Fh,60h,1Fh,0,5Bh,80h,70h,0C0h,21h,0C0h,6
DEFB 0,7,0C0h,3,0E0h,2,0C0h,7,0C0h,3,0C0h,1,80h,3,0C0h,7,0E0h
DEFB 7,0E0h,0Eh,0F0h,0Dh,0F0h,3,0C0h,6,0E0h,7,60h,0Eh,0E0h,1
DEFB 80h,1,0F0h,0,0F8h,0,0B0h,1,0F0h,0,0F0h,0,60h,0,0F0h,1,0F8h
DEFB 1,0D8h,1,0D8h,1,0B8h,0,0F0h,0,60h,0,60h,0,0E0h,0,60h,0
DEFB 7Ch,0,3Eh,0,2Ch,0,7Ch,0,3Ch,0,18h,0,3Ch,0,7Eh,0,7Eh,0,0EFh
DEFB 0,0DFh,0,3Ch,0,6Eh,0,76h,0,0EEh
;
; X,Y lookup table
;
DEFW T6000 ,T6000+100h,T6000+200h,T6000+300h
DEFW T6000+400h,T6000+500h,T6000+600h,T6000+700h
DEFW T6000+ 20h,T6000+120h,T6000+220h,T6000+320h
DEFW T6000+420h,T6000+520h,T6000+620h,T6000+720h
DEFW T6000+ 40h,T6000+140h,T6000+240h,T6000+340h
DEFW T6000+440h,T6000+540h,T6000+640h,T6000+740h
DEFW T6000+ 60h,T6000+160h,T6000+260h,T6000+360h
DEFW T6000+460h,T6000+560h,T6000+660h,T6000+760h
DEFW T6000+ 80h,T6000+180h,T6000+280h,T6000+380h
DEFW T6000+480h,T6000+580h,T6000+680h,T6000+780h
DEFW T6000+0A0h,T6000+1A0h,T6000+2A0h,T6000+3A0h
DEFW T6000+4A0h,T6000+5A0h,T6000+6A0h,T6000+7A0h
DEFW T6000+0C0h,T6000+1C0h,T6000+2C0h,T6000+3C0h
DEFW T6000+4C0h,T6000+5C0h,T6000+6C0h,T6000+7C0h
DEFW T6000+0E0h,T6000+1E0h,T6000+2E0h,T6000+3E0h
DEFW T6000+4E0h,T6000+5E0h,T6000+6E0h,T6000+7E0h
;
; Main entry point
;
DI
LD SP,MEMTOP
JP START

SHEET: DEFB 0
T8408: DEFB 0,1,0,1,1,3,1,3,2,0,2,0,0,1,2,3
S_AIR: DEFB 'AIR'

DEFB '0000'
HGHSCOR: DEFB '000000'
DEFB '0000'
SCORBUF: DEFB '000000'
SCORES: DEFB 'High Score 000000'
DEFB ' Score 000000'
MESSG: DEFB 'Game'
MESSO: DEFB 'Over'
NOMEN: DEFB 0 ;No. of lives
B8458: DEFB 0
KEMP: DEFB 0 ;Kempston joystick flag
DEMO: DEFB 0 ;Demo mode?
B845B: DEFB 0
T845C: DEFB 0
CHEAT: DEFB 0 ;Cheat mode?

DEFW 01F1Fh ;---------- ;Cheat string
CHEATDT:
DEFW 0F1Fh ;----6-----
DEFW 1E1Fh ;0---------
DEFW 1F1Bh ;-------3--
DEFW 1F1Eh ;---------1
DEFW 171Fh ;---7------
DEFW 0F1Fh ;----6-----
DEFW 1D1Fh ;-9--------
T846E: DEFB 50h,80h,81h,50h,66h,67h,50h,56h,57h,32h,56h,57h,32h,0ABh
DEFB 0CBh,32h,2Bh,33h,32h,2Bh,33h,32h,0ABh,0CBh,32h,33h,40h
DEFB 32h,33h,40h,32h,0ABh,0CBh,32h,80h,81h,32h,80h,81h,32h,66h
DEFB 67h,32h,56h,57h,32h,60h,56h,32h,0ABh,0C0h,32h,2Bh,30h,32h
DEFB 2Bh,30h
;
; Source for this bit is at 08000h
;
DEFB 32h,0ABh,0C0h,32h,30h,44h,32h,30h,44h,32h,0ABh
DEFB 0C0h,32h,88h,89h,32h,88h,89h,32h,72h,73h,32h,4Ch,4Dh,32h
DEFB 4Ch,4Dh,32h,0ABh,0C0h,32h,26h,30h,32h,26h,30h,32h,0ABh
DEFB 0C0h,32h,30h,44h,32h,30h,44h,32h,0ABh,0C0h,32h,88h,89h
DEFB 32h,88h,89h,32h,72h,73h,32h,4Ch,4Dh,32h,4Ch,4Dh,32h,0ABh
DEFB 0CBh,32h,26h,33h,32h,26h,33h,32h,0ABh,0CBh,32h,33h,40h
DEFB 32h,33h,40h,32h,0ABh,0CBh,32h,80h,81h,32h,80h,81h,32h,66h
DEFB 67h,32h,56h,57h,32h,40h,41h,32h,80h,0ABh,32h,20h,2Bh,32h
DEFB 20h,2Bh,32h,80h,0ABh,32h,2Bh,33h,32h,2Bh,33h,32h,80h,0ABh
DEFB 32h,80h,81h,32h,80h,81h,32h,66h,67h,32h,56h,57h,32h,40h
DEFB 41h,32h,80h,98h,32h,20h,26h,32h,20h,26h,32h,80h,98h,32h
DEFB 26h,30h,32h,26h,30h,32h,0,0,32h,72h,73h,32h,72h,73h,32h
DEFB 60h,61h,32h,4Ch,4Dh,32h,4Ch,99h,32h,4Ch,4Dh,32h,4Ch,4Dh
DEFB 32h,4Ch,99h,32h,5Bh,5Ch,32h,56h,57h,32h,33h,0CDh,32h,33h
DEFB 34h,32h,33h,34h,32h,33h,0CDh,32h,40h,41h,32h,66h,67h,64h
DEFB 66h,67h,32h,72h,73h,64h,4Ch,4Dh,32h,56h,57h,32h,80h,0CBh
DEFB 19h,80h,0,19h,80h,81h,32h,80h,0CBh,0FFh
T858C:
DEFB 80h,72h,66h,60h,56h,66h,56h,56h,51h,60h,51h,51h,56h,66h
DEFB 56h,56h,80h,72h,66h,60h,56h,66h,56h,56h,51h,60h,51h,51h
DEFB 56h,56h,56h,56h,80h,72h,66h,60h,56h,66h,56h,56h,51h,60h
DEFB 51h,51h,56h,66h,56h,56h,80h,72h,66h,60h,56h,66h,56h,40h
DEFB 56h,66h,80h,66h,56h,56h,56h,56h
;
; Game restart point
;
START: XOR A
LD (SHEET),A
LD (KEMP),A
LD (DEMO),A
LD (B845B),A
LD (B8458),A
LD A,2 ;Initial lives count
LD (NOMEN),A
LD HL,T845C
SET 0,(HL)
LD HL,SCREEN
LD DE,SCREEN+1
LD BC,17FFh ;Clear screen image
LD (HL),0
LDIR
LD HL,0A000h ;Title screen bitmap
LD DE,SCREEN
LD BC,4096
LDIR
LD HL,SCREEN + 800h + 1*32 + 29
LD DE,MANDAT+64
LD C,0
CALL DRWFIX
LD HL,0FC00h ;Attributes for the last room
LD DE,ATTR ;(top third)
LD BC,256
LDIR
LD HL,09E00h ;Attributes for title screen
LD BC,512 ;(bottom two-thirds)
LDIR
LD BC,31
DI
XOR A
R8621:
IN E,(C)
OR E
DJNZ R8621 ;$-03
AND 20h
JR NZ,R862F ;$+07
LD A,1
LD (KEMP),A
R862F:
LD IY,T846E
CALL C92DC
JP NZ,L8684
XOR A
LD (EUGHGT),A
R863D:
LD A,(EUGHGT)
LD IX,TITLEMSG
DEFB 0DDh
LD L,A ;LD XL,A
LD DE,SCREEN+4096+3*32
LD C,20h
CALL PMESS
LD A,(EUGHGT)
AND 6
RRCA
RRCA
RRCA
LD E,A
LD D,82h
LD HL,SCREEN + 100h + 1*32 + 29
LD C,0
CALL DRWFIX
LD BC,100
R8664:
DJNZ R8664 ;$-00
DEC C
JR NZ,R8664 ;$-03
LD BC,0BFFEh
IN A,(C)
AND 1
CP 1
JR NZ,L8684 ;$+12
LD A,(EUGHGT)
INC A
CP 0E0h
LD (EUGHGT),A
JR NZ,R863D ;$-40
LD A,40h
LD (DEMO),A
L8684:
LD HL,SCORBUF-4
LD DE,SCORBUF-3
LD BC,9
LD (HL),30h
LDIR

NEWSHT: LD A,(SHEET)
SLA A ;*512
SLA A ;*1k
ADD A,0B0h ;+B000
LD H,A
LD L,0 ;Copy the first half-k to BK_ATTR,
LD DE,BK_ATTR
LD BC,512
LDIR ;and the second to ROOM_NAME.
LD DE,ROOM_NAME
LD BC,512
LDIR
CALL C8A75
LD HL,SCREEN+4096
LD DE,SCREEN+4097
LD BC,2047
LD (HL),0
LDIR
LD IX,ROOM_NAME
LD C,20h
LD DE,SCREEN+4096
CALL PMESS
LD IX,S_AIR
LD C,3
LD DE,SCREEN+4096+1*32
CALL PMESS
LD A,52h
R86D7:
LD H,A
LD D,A
LD L,24h
LD E,25h
LD B,A
LD A,(AIR_MAJOR)
SUB 24h
LD C,A
LD A,B
LD B,0
LD (HL),0FFh
LDIR
INC A
CP 56h
JR NZ,R86D7 ;$-17
LD IX,SCORES
LD DE,SCREEN+4096+3*32
LD C,20h
CALL PMESS
LD A,(BORDER) ;Border
LD C,0FEh
OUT (C),A
LD A,(DEMO)
OR A
JR Z,LOOP ;$+07
LD A,40h
LD (DEMO),A
;
;Main game loop
;
LOOP: LD A,(NOMEN)
LD HL,SCREEN + 4096 + 5*32
OR A
JR Z,R8730 ;$+1B
LD B,A
R8718: LD C,0
PUSH HL
PUSH BC
LD A,(B845B)
RLCA
RLCA
RLCA
AND 60h
LD E,A
LD D,82h
CALL DRWFIX
POP BC
POP HL
INC HL
INC HL
DJNZ R8718 ;$-16
R8730: LD A,(CHEAT)
CP 7
JR NZ,R873F ;$+0A
LD DE,SP_FOOT
LD C,0
CALL DRWFIX
R873F:
LD HL,BK_ATTR
LD DE,WK_ATTR
LD BC,512
LDIR
LD HL,T7000
LD DE,T6000
LD BC,4096
LDIR
CALL C8D0F
LD A,(DEMO)
OR A
CALL Z,C8ABB
LD A,(DEMO)
OR A
CALL Z,C923A
CALL C8DAA ;In JSW this is at 89ECh.
CALL C9105
CALL PAINT_ITEMS
;
; Special-case code
;
LD A,(SHEET)
CP 4 ;Eugene's Lair
CALL Z,EUGENE
LD A,(SHEET)
CP 0Dh ;Skylab Landing Bay
JP Z,SKYLAB
LD A,(SHEET)
CP 8 ;Wacky Amoebatrons and more: Vertical guardians
CALL NC,VGUARD
LD A,(SHEET)
CP 7 ;Kong Beast
CALL Z,KONG
LD A,(SHEET)
CP 0Bh ;Kong Beast
CALL Z,KONG
LD A,(SHEET)
CP 12h ;Solar Power Generator
CALL Z,SOLAR
L879F:
CALL CHK_PORTAL
L87A2:
LD HL,T6000
LD DE,SCREEN
LD BC,4096
LDIR
LD A,(B8458)
OR A
JR Z,R87C8 ;$+17
DEC A
LD (B8458),A
RLCA
RLCA
RLCA
AND 38h
LD HL,WK_ATTR
LD DE,WK_ATTR+1
LD BC,511
LD (HL),A
LDIR
R87C8:
LD HL,WK_ATTR
LD DE,ATTR
LD BC,512
LDIR
LD IX,SCORBUF
LD DE,SCREEN + 4096 + 5*32 + 26 ;AT 21,26
LD C,6
CALL PMESS
LD IX,HGHSCOR
LD DE,SCREEN + 4096 + 3*32 + 11
LD C,6
CALL PMESS
CALL AIR_DOWN ;Normal decrease of air.
JP Z,MANDEAD
LD BC,0FEFEh
IN A,(C)
LD E,A
LD B,7Fh
IN A,(C)
OR E
AND 1
JP Z,START
LD B,0FDh ;Check the A-G row for Pause.
IN A,(C)
AND 1Fh
CP 1Fh
JR Z,R8815 ;$+0C
R880B:
LD B,2 ;In a pause. Wait for a keypress in any
IN A,(C) ;other row than A-G.
AND 1Fh
CP 1Fh
JR Z,R880B ;$-08
R8815:
LD A,(AIRBORNE)
CP 0FFh
JP Z,MANDEAD
LD B,0BFh
LD HL,T845C
IN A,(C)
AND 1Fh
CP 1Fh
JR Z,R8834 ;$+0C
BIT 0,(HL)
JR NZ,R8836 ;$+0A
LD A,(HL)
XOR 3
LD (HL),A
JR R8836 ;$+04

R8834:
RES 0,(HL)
R8836:
BIT 1,(HL)
JR NZ,NONOTE4 ;$+27
LD A,(B845B)
INC A
LD (B845B),A
AND 7Eh
RRCA
LD E,A
LD D,0
LD HL,T858C
ADD HL,DE
LD A,(BORDER) ;Border
LD E,(HL)
LD BC,3
TM51: OUT (0FEh),A
;
;Source for this bit is present at X934C
;
X8854: DEC E
JR NZ,NOFLP6
LD E,(HL)
XOR 18h
NOFLP6: DJNZ TM51 ;$-08
DEC C
JR NZ,TM51 ;$-0B
NONOTE4:
LD A,(DEMO)
OR A
JR Z,NODEM1 ;$+21
DEC A
JP Z,MANDEAD
LD (DEMO),A
LD BC,0FEh ;Check for any keypress
IN A,(C)
AND 1Fh
CP 1Fh ;and if there is one, return to the opening
JP NZ,START ;screen.
LD A,(KEMP)
OR A
JR Z,NODEM1 ;$+08
IN A,(1Fh)
OR A
JP NZ,START
NODEM1: LD BC,0EFFEh ;Keys 6-9
IN A,(C)
BIT 4,A ;Check for "6"
JP NZ,CKCHEAT
LD A,(CHEAT) ;and if it's pressed, check for cheat mode
CP 7
JP NZ,CKCHEAT
LD B,0F7h ;And if it's on, get the room from keys
IN A,(C) ;1-5
CPL
AND 1Fh
CP 14h ;If it's >20, cancel
JP NC,CKCHEAT
LD (SHEET),A ;Else jump to new room
JP NEWSHT

CKCHEAT:
LD A,(CHEAT) ;If in cheat mode, don't check
CP 7
JP Z,LOOP
RLCA
LD E,A
LD D,0
LD IX,CHEATDT
ADD IX,DE
LD BC,0F7FEh ;Test keys 1-5
IN A,(C)
AND 1Fh
CP (IX+0) ;Next character in sequence?
JR Z,CKNXCHT
CP 1Fh ;No character?
JP Z,LOOP
CP (IX+-2) ;Current character in sequence?
JP Z,LOOP
XOR A ;Incorrect character
LD (CHEAT),A
JP LOOP

CKNXCHT: ;Test keys 6-9
LD B,0EFh
IN A,(C)
AND 1Fh
CP (IX+1) ;Next character
JR Z,INCCHT
CP 1Fh ;No character
JP Z,LOOP
CP (IX+-1) ;Current character
JP Z,LOOP
XOR A ;Incorrect character
LD (CHEAT),A
JP LOOP

INCCHT: LD A,(CHEAT) ;Move to next character in the code
INC A
LD (CHEAT),A
JP LOOP
;
MANDEAD:
LD A,(DEMO)
OR A
JP NZ,NXSHEET
LD A,47h
LPDEAD1:
LD HL,ATTR
LD DE,ATTR+1
LD BC,511 ;Attributes to white on black
LD (HL),A
LDIR
LD E,A
CPL
AND 7
RLCA
RLCA
RLCA
OR 7
LD D,A
LD C,E
RRC C
RRC C
RRC C
OR 10h
XOR A
TM21: OUT (0FEh),A
XOR 18h
LD B,D
TM22: DJNZ TM22
DEC C
JR NZ,TM21
LD A,E
DEC A
CP 3Fh
JR NZ,LPDEAD1
LD HL,NOMEN
LD A,(HL)
OR A
JP Z,ENDGAM
DEC (HL)
JP NEWSHT

ENDGAM: LD HL,HGHSCOR ;Compare high score
LD DE,SCORBUF ;with current score
LD B,6
LPHGH: LD A,(DE)
CP (HL)
JP C,FEET ;Current score is less
JP NZ,NEWHGH ;Current score is more
INC HL
INC DE
DJNZ LPHGH
NEWHGH: LD HL,SCORBUF ;Set high score to current
LD DE,HGHSCOR
LD BC,6
LDIR
FEET: LD HL,SCREEN ;Foot animation
LD DE,SCREEN+1
LD BC,4095
LD (HL),0
LDIR
XOR A ;Eugene's height
LD (EUGHGT),A
LD DE,MANDAT+64
LD HL,SCREEN+800h+4*32+15
LD C,0
CALL DRWFIX ;Draw Willy
LD DE,SP_PEDE
LD HL,SCREEN+800h+6*32+15
LD C,0
CALL DRWFIX ;Draw pedestal
LOOPFT: LD A,(EUGHGT)
LD C,A
LD B,83h
LD A,(BC) ;Calc foot position
OR 0Fh
LD L,A
INC BC
LD A,(BC)
SUB 20h
LD H,A
LD DE,SP_FOOT
LD C,0
CALL DRWFIX ;Draw foot
LD A,(EUGHGT)
CPL
LD E,A
XOR A
LD BC,64
TM111: OUT (0FEh),A
XOR 18h
LD B,E
TM112: DJNZ TM111 ;$-00
DEC C
JR NZ,TM112 ;$-08
LD HL,ATTR
LD DE,ATTR+1
LD BC,511
LD A,(EUGHGT)
AND 0Ch ;Flicker colours
RLCA
OR 47h
LD (HL),A
LDIR
LD A,(EUGHGT)
ADD A,4
LD (EUGHGT),A
CP 0C4h
JR NZ,LOOPFT ;$-48
LD IX,MESSG
LD C,4
LD DE,SCREEN + 6*32 + 10
CALL PMESS
LD IX,MESSO
LD C,4
LD DE,SCREEN + 6*32 + 18
CALL PMESS
LD BC,0
LD D,6
TM91: DJNZ TM91
LD A,C ;Make the "game over" message flicker
AND 7
OR 40h
LD (ATTR + 6*32 + 10),A
INC A
AND 7
OR 40h
LD (ATTR + 6*32 + 11),A
INC A
AND 7
OR 40h
LD (ATTR + 6*32 + 12),A
INC A
AND 7
OR 40h
LD (ATTR + 6*32 + 13),A
INC A
AND 7
OR 40h
LD (ATTR + 6 * 32 + 18),A
INC A
AND 7
OR 40h
LD (ATTR + 6 * 32 + 19),A
INC A
AND 7
OR 40h
LD (ATTR + 6 * 32 + 20),A
INC A
AND 7
OR 40h
LD (ATTR + 6 * 32 + 21),A
DEC C
JR NZ,TM91
DEC D
JR NZ,TM91
JP START

AIR_DOWN:
LD A,(AIR_MINOR)
SUB 4
LD (AIR_MINOR),A
CP 0FCh
JR NZ,R8A55 ;$+0F
LD A,(AIR_MAJOR)
CP 24h
RET Z
DEC A
LD (AIR_MAJOR),A
LD A,(AIR_MINOR)
R8A55:
AND 0E0h
RLCA
RLCA
RLCA
LD E,0
OR A
JR Z,R8A66 ;$+09
LD B,A
R8A60:
RRC E
SET 7,E
DJNZ R8A60 ;$-04
R8A66:
LD A,(AIR_MAJOR)
LD L,A
LD H,52h
LD B,4
R8A6E:
LD (HL),E
INC H
DJNZ R8A6E ;$-02
XOR A
INC A
RET

C8A75:
LD IX,BK_ATTR
LD A,70h
LD (L8A9B+1),A
CALL C8A8A
LD IX,T5E00 + 100h
LD A,78h
LD (L8A9B+1),A
C8A8A: LD C,0
L8A8C: LD E,C
LD A,(IX+0)
LD HL,ELEM_AIR
LD BC,72
CPIR
LD C,E
LD B,8
L8A9B: LD D,0
R8A9D: LD A,(HL)
LD (DE),A
INC HL
INC D
DJNZ R8A9D ;$-04
INC IX
INC C
JP NZ,L8A8C
LD A,(SHEET)
CP 13h
RET NZ
LD HL,0A000h ;Title page
LD DE,T7000
LD BC,2048
LDIR
RET

C8ABB:
LD A,(AIRBORNE)
CP 1
JR NZ,NOT_JUMPING ;$+50
LD A,(JUMP_DIST)
RES 0,A
SUB 8
LD HL,WILLY_Y
ADD A,(HL)
LD (HL),A
CALL C8B82
LD A,(ELEM_EARTH)
CP (HL)
JP Z,L8BA2
INC HL
CP (HL)
JP Z,L8BA2
LD A,(JUMP_DIST)
INC A
LD (JUMP_DIST),A
SUB 8
JP P,L8AEB
NEG
L8AEB:
INC A
RLCA
RLCA
RLCA
LD D,A
LD C,20h
LD A,(BORDER) ;Border
R8AF5:
OUT (0FEh),A
XOR 18h
LD B,D
R8AFA:
DJNZ R8AFA ;$-00
DEC C
JR NZ,R8AF5 ;$-08
LD A,(JUMP_DIST)
CP 12h
JP Z,L8B96
CP 10h
JR Z,NOT_JUMPING ;$+07
CP 0Dh
JP NZ,L8C83
NOT_JUMPING: ;This corresponds to JSW at 0E36h or so.
LD A,(WILLY_Y)
AND 0Fh
JR NZ,FALL_INTO ;$+3C
LD HL,(WILLY_POS)
LD DE,64
ADD HL,DE
LD A,(ELEM_CRUMBLY)
CP (HL)
CALL Z,CRUMBLE
LD A,(ELEM_FIRE1)
CP (HL)
JR Z,FALL_INTO ;$+28
LD A,(ELEM_FIRE2)
CP (HL)
JR Z,FALL_INTO ;$+22
INC HL
LD A,(ELEM_CRUMBLY)
CP (HL)
CALL Z,CRUMBLE
LD A,(ELEM_FIRE1)
CP (HL)
JR Z,FALL_INTO ;$+14
LD A,(ELEM_FIRE2)
CP (HL)
JR Z,FALL_INTO ;$+0E
LD A,(ELEM_AIR)
CP (HL)
DEC HL
JP NZ,L8BDD
CP (HL)
JP NZ,L8BDD
FALL_INTO:
LD A,(AIRBORNE)
CP 1
JP Z,L8C83
LD HL,WILLY_DIR
RES 1,(HL)
OR A
JP Z,L8B9C
INC A
LD (AIRBORNE),A
RLCA
RLCA
RLCA
RLCA
LD D,A
LD C,20h
LD A,(BORDER) ;Border
R8B70:
OUT (0FEh),A
XOR 18h
LD B,D
R8B75:
DJNZ R8B75 ;$-00
DEC C
JR NZ,R8B70 ;$-08
LD A,(WILLY_Y)
ADD A,8
LD (WILLY_Y),A
C8B82:
AND 0F0h
LD L,A
XOR A
RL L
ADC A,5Ch
LD H,A
LD A,(WILLY_POS)
AND 1Fh
OR L
LD L,A
LD (WILLY_POS),HL
RET

L8B96:
LD A,6
LD (AIRBORNE),A
RET

L8B9C:
LD A,2
LD (AIRBORNE),A
RET

L8BA2:
LD A,(WILLY_Y)
ADD A,10h
AND 0F0h
LD (WILLY_Y),A
CALL C8B82
LD A,2
LD (AIRBORNE),A
LD HL,WILLY_DIR
RES 1,(HL)
RET

CRUMBLE:
LD C,L ;eg: in Central Cavern, HL = 5D97
LD A,H ;then BC becomes 7F97.
ADD A,1Bh
OR 7
LD B,A ;BC = address of graphic for this cell.
R8BC1:
DEC B ;Move graphic down 1 row.
LD A,(BC)
INC B
LD (BC),A
DEC B
LD A,B
AND 7
JR NZ,R8BC1 ;$-08
XOR A
LD (BC),A
LD A,B
ADD A,7
LD B,A
LD A,(BC) ;Introduce a blank line at the top.
OR A
RET NZ
LD A,(ELEM_AIR)
INC H
INC H
LD (HL),A
DEC H
DEC H
RET

L8BDD:
LD A,(AIRBORNE)
CP 0Ch
JP NC,L8D06
LD E,0FFh
XOR A
LD (AIRBORNE),A
LD A,(ELEM_CONVEY)
CP (HL)
JR Z,R8BF5 ;$+06
INC HL
CP (HL)
JR NZ,R8BFB ;$+08
R8BF5:
LD A,(CONVEY_DIR)
SUB 3
LD E,A
R8BFB:
LD BC,0DFFEh
IN A,(C)
AND 1Fh
OR 20h
AND E
LD E,A
LD BC,0FBFEh
IN A,(C)
AND 1Fh
RLC A
OR 1
AND E
LD E,A
LD B,0F7h
IN A,(C)
RRCA
OR 0F7h
AND E
LD E,A
LD B,0EFh
IN A,(C)
OR 0FBh
AND E
LD E,A
LD A,(KEMP)
OR A
JR Z,R8C34 ;$+0C
LD BC,1Fh
IN A,(C)
AND 3
CPL
AND E
LD E,A
R8C34:
LD C,0
LD A,E
AND 2Ah
CP 2Ah
JR Z,R8C3F ;$+04
LD C,4
R8C3F:
LD A,E
AND 15h
CP 15h
JR Z,R8C48 ;$+04
SET 3,C
R8C48:
LD A,(WILLY_DIR)
ADD A,C
LD C,A
LD B,0
LD HL,T8408
ADD HL,BC
LD A,(HL)
LD (WILLY_DIR),A
LD BC,07EFEh
IN A,(C)
AND 1Fh
CP 1Fh
JR NZ,R8C7B ;$+1B
LD B,0EFh
IN A,(C)
AND 9
CP 9
JR NZ,R8C7B ;$+11
LD A,(KEMP)
OR A
JR Z,L8C83 ;$+13
LD BC,1Fh
IN A,(C)
BIT 4,A
JR Z,L8C83 ;$+0A
R8C7B:
XOR A
LD (JUMP_DIST),A
INC A
LD (AIRBORNE),A
L8C83:
LD A,(WILLY_DIR)
AND 2
RET Z
LD A,(WILLY_DIR)
AND 1
JP Z,L8CCA
LD A,(WILLY_FRAME)
OR A
JR Z,R8C9C ;$+07
DEC A
LD (WILLY_FRAME),A
RET

R8C9C:
LD HL,(WILLY_POS)
DEC HL
LD DE,32
ADD HL,DE
LD A,(ELEM_EARTH)
CP (HL)
RET Z
LD A,(WILLY_Y)
AND 0Fh
JR Z,R8CB9 ;$+0B
LD A,(ELEM_EARTH)
ADD HL,DE
CP (HL)
RET Z
OR A
SBC HL,DE
R8CB9:
LD A,(ELEM_EARTH)
OR A
SBC HL,DE
CP (HL)
RET Z
LD (WILLY_POS),HL
LD A,3
LD (WILLY_FRAME),A
RET

L8CCA:
LD A,(WILLY_FRAME)
CP 3
JR Z,R8CD6 ;$+07
INC A
LD (WILLY_FRAME),A
RET

R8CD6:
LD HL,(WILLY_POS)
INC HL
INC HL
LD DE,32
LD A,(ELEM_EARTH)
ADD HL,DE
CP (HL)
RET Z
LD A,(WILLY_Y)
AND 0Fh
JR Z,R8CF4 ;$+0B
LD A,(ELEM_EARTH)
ADD HL,DE
CP (HL)
RET Z
OR A
SBC HL,DE
R8CF4:
LD A,(ELEM_EARTH)
OR A
SBC HL,DE
CP (HL)
RET Z
DEC HL
LD (WILLY_POS),HL
XOR A
LD (WILLY_FRAME),A
RET

L8D05:
POP HL
L8D06:
POP HL
L8D07:
LD A,0FFh
LD (AIRBORNE),A
JP L87A2

C8D0F:
LD IY,HGUARDS
LD DE,7
R8D16:
LD A,(IY+0)
CP 0FFh
RET Z
OR A
JR Z,R8D6F ;$+52
LD A,(AIR_MINOR)
AND 4
RRCA
RRCA
RRCA
AND (IY+0)
JR NZ,R8D6F ;$+45
LD A,(IY+4)
CP 3
JR Z,R8D43 ;$+12
CP 4
JR Z,R8D5A ;$+25
JR NC,R8D3E ;$+07
INC (IY+4)
JR R8D6F ;$+33

R8D3E:
DEC (IY+4)
JR R8D6F ;$+2E

R8D43:
LD A,(IY+1)
CP (IY+6)
JR NZ,R8D51 ;$+08
LD (IY+4),7
JR R8D6F ;$+20

R8D51:
LD (IY+4),0
INC (IY+1)
JR R8D6F ;$+17

R8D5A:
LD A,(IY+1)
CP (IY+5)
JR NZ,R8D68 ;$+08
LD (IY+4),0
JR R8D6F ;$+09

R8D68:
LD (IY+4),7
DEC (IY+1)
R8D6F:
ADD IY,DE
JR R8D16 ;$-5B

SOLAR: LD HL,WK_ATTR+23
LD DE,32
R8D79:
LD A,(ELEM_WATER)
CP (HL)
RET Z
LD A,(ELEM_EARTH)
CP (HL)
RET Z
LD A,27h
CP (HL)
JR NZ,R8D98 ;$+12
EXX
CALL AIR_DOWN ;Hit by solar beam?
CALL AIR_DOWN
CALL AIR_DOWN
CALL AIR_DOWN
EXX
JR R8DA5 ;$+0F

R8D98:
LD A,(ELEM_AIR)
CP (HL)
JR Z,R8DA5 ;$+09
LD A,E
XOR 0DFh
LD E,A
LD A,D
CPL
LD D,A
R8DA5:
LD (HL),77h
ADD HL,DE
JR R8D79 ;$-2F

C8DAA:
LD IY,HGUARDS
R8DAE:
LD A,(IY+0)
CP 0FFh
RET Z
OR A
JR Z,R8DF1 ;$+3C
LD DE,31
LD L,(IY+1)
LD H,(IY+2)
AND 7Fh
LD (HL),A
INC HL
LD (HL),A
ADD HL,DE
LD (HL),A
INC HL
LD (HL),A
LD C,1
LD A,(IY+4)
RRCA
RRCA
RRCA
LD E,A
LD A,(SHEET)
CP 7
JR C,R8DE3 ;$+0C
CP 9
JR Z,R8DE3 ;$+08
CP 0Fh
JR Z,R8DE3 ;$+04
SET 7,E
R8DE3:
LD D,81h
LD L,(IY+1)
LD H,(IY+3)
CALL DRWFIX
JP NZ,L8D06
R8DF1:
LD DE,7
ADD IY,DE
JR R8DAE ;$-48

EUGENE: LD A,(PORTAL_CLOSED)
OR A
JR Z,R8E0F ;$+13
LD A,(B80DB)
OR A
JR Z,R8E0F ;$+0D
LD A,(EUGHGT)
DEC A
JR Z,R8E1C ;$+14
LD (EUGHGT),A
JR R8E24 ;$+17

R8E0F:
LD A,(EUGHGT)
INC A
CP 58h
JR Z,R8E1C ;$+07
LD (EUGHGT),A
JR R8E24 ;$+0A

R8E1C:
LD A,(B80DB)
XOR 1
LD (B80DB),A
R8E24:
LD A,(EUGHGT)
AND 7Fh
RLCA
LD E,A
LD D,83h
LD A,(DE)
OR 0Fh
LD L,A
INC DE
LD A,(DE)
LD H,A
LD DE,VGUARDS+3 ;Vertical guardian 0's position
LD C,1
CALL DRWFIX
JP NZ,L8D06
LD A,(EUGHGT)
AND 78h
RLCA
OR 7
SCF
RL A
LD L,A
LD A,0
ADC A,5Ch
LD H,A
LD A,(PORTAL_CLOSED)
OR A
LD A,7
JR NZ,R8E5F ;$+09
LD A,(AIR_MINOR)
RRCA
RRCA
AND 7
R8E5F:
C8E5F:
LD (HL),A
LD A,(ELEM_AIR)
AND 0F8h
OR (HL)
LD (HL),A
LD DE,31
INC HL
LD (HL),A
ADD HL,DE
LD (HL),A
INC HL
LD (HL),A
ADD HL,DE
LD (HL),A
INC HL
LD (HL),A
RET

SKYLAB: LD IY,VGUARDS
R8E79:
LD A,(IY+0)
CP 0FFh
JP Z,L879F
LD A,(IY+2)
CP (IY+6)
JR NC,R8E91 ;$+0A
ADD A,(IY+4)
LD (IY+2),A
JR R8EAF ;$+20

R8E91:
INC (IY+1)
LD A,(IY+1)
CP 8
JR NZ,R8EAF ;$+16
LD A,(IY+5)
LD (IY+2),A
LD A,(IY+3)
ADD A,8
AND 1Fh
LD (IY+3),A
LD (IY+1),0
R8EAF:
LD E,(IY+2)
RLC E
LD D,83h
LD A,(DE)
ADD A,(IY+3)
LD L,A
INC DE
LD A,(DE)
LD H,A
LD A,(IY+1)
RRCA
RRCA
RRCA
LD E,A
LD D,81h
LD C,1
CALL DRWFIX
JP NZ,L8D07
LD A,(IY+2)
AND 40h
RLCA
RLCA
ADD A,5Ch
LD H,A
LD A,(IY+2)
RLCA
RLCA
AND 0E0h
OR (IY+3)
LD L,A
LD A,(IY+0)
CALL C8E5F
LD DE,7
ADD IY,DE
JR R8E79 ;$-76

VGUARD: LD IY,VGUARDS
R8EF5: LD A,(IY+0)
CP 0FFh
RET Z
INC (IY+1)
RES 2,(IY+1)
LD A,(IY+2)
ADD A,(IY+4)
CP (IY+5)
JR C,R8F17 ;$+0C
CP (IY+6)
JR NC,R8F17 ;$+07
LD (IY+2),A
JR R8F1F ;$+0A

R8F17:
LD A,(IY+4)
NEG
LD (IY+4),A
R8F1F:
LD A,(IY+2)
AND 7Fh
RLCA
LD E,A
LD D,83h
LD A,(DE)
OR (IY+3)
LD L,A
INC DE
LD A,(DE)
LD H,A
LD A,(IY+1)
RRCA
RRCA
RRCA
LD E,A
LD D,81h
LD C,1
CALL DRWFIX
JP NZ,L8D06
LD A,(IY+2)
AND 40h
RLCA
RLCA
ADD A,5Ch
LD H,A
LD A,(IY+2)
RLCA
RLCA
AND 0E0h
OR (IY+3)
LD L,A
LD A,(IY+0)
CALL C8E5F
LD DE,7
ADD IY,DE
JR R8EF5 ;$-6C

PAINT_ITEMS: ;In JSW this is at 93D1h
XOR A
LD (PORTAL_CLOSED),A
LD IY,ITEMS
R8F6B:
LD A,(IY+0)
CP 0FFh
JR Z,R8FBA ;$+4A
OR A
JR Z,R8FAE ;$+3B
LD E,(IY+1)
LD D,(IY+2)
LD A,(DE)
AND 7
CP 7
JR NZ,R8F8E ;$+0E
LD HL,SCORBUF+3
CALL C90FE
LD (IY+0),0
JR R8FAE ;$+22

R8F8E:
LD A,(IY+0)
AND 0F8h
OR 3
LD B,A
LD A,(IY+0)
AND 3
ADD A,B
LD (IY+0),A
LD (DE),A
LD (PORTAL_CLOSED),A
LD D,(IY+3)
LD HL,ITEM_GRAPHIC
LD B,8
CALL C92D5
R8FAE:
INC IY
INC IY
INC IY
INC IY
INC IY
JR R8F6B ;$-4D

R8FBA:
LD A,(PORTAL_CLOSED)
OR A
RET NZ
LD HL,PORTAL_ATTR
SET 7,(HL)
RET

CHK_PORTAL:
LD HL,(PORTAL_XY)
LD A,(WILLY_POS)
CP L
JR NZ,R8FDF ;$+13
LD A,(WILLY_POS+1)
CP H
JR NZ,R8FDF ;$+0D
LD A,(PORTAL_ATTR)
BIT 7,A
JR Z,R8FDF ;$+06
POP HL
JP NXSHEET

R8FDF: LD A,(PORTAL_ATTR)
LD (HL),A
INC HL
LD (HL),A
LD DE,31
ADD HL,DE
LD (HL),A
INC HL
LD (HL),A
LD DE,PORTAL_IMAGE
LD HL,(PORTAL_XY+2)
LD C,0
DRWFIX: LD B,10h ;Draw a sprite. JSW has this at 9456h.
R8FF6: BIT 0,C
LD A,(DE)
JR Z,R8FFF ;$+06
AND (HL)
RET NZ
LD A,(DE)
OR (HL)
R8FFF:
LD (HL),A
INC L
INC DE
BIT 0,C
LD A,(DE)
JR Z,R900B ;$+06
AND (HL)
RET NZ
LD A,(DE)
OR (HL)
R900B:
LD (HL),A
DEC L
INC H
INC DE
LD A,H
AND 7
JR NZ,R9024 ;$+12
LD A,H
SUB 8
LD H,A
LD A,L
ADD A,20h
LD L,A
AND 0E0h
JR NZ,R9024 ;$+06
LD A,H
ADD A,8
LD H,A
R9024:
DJNZ R8FF6 ;$-2E
XOR A
RET

NXSHEET:
LD A,(SHEET)
INC A
CP 20
JR NZ,R9091
;
; Reached the end!
;
LD A,(DEMO)
OR A
JP NZ,L9090 ;If in demo mode, wrap.
LD A,(CHEAT)
CP 7
JR Z,L9090 ;If in cheat mode, wrap.
LD C,0
LD DE,MANDAT+96 ;Draw Willy at top of screen
LD HL,SCREEN + 2*32 + 19
CALL DRWFIX
LD DE,SP_SWFS ;SwordFish
LD HL,SCREEN+ 5*32 +19
CALL DRWFIX
LD HL,ATTR + 2*32 + 19 ;Set Willy attributes
LD DE,31
LD (HL),2Fh
INC HL
LD (HL),2Fh
ADD HL,DE
LD (HL),27h
INC HL
LD (HL),27h
ADD HL,DE
INC HL
ADD HL,DE
LD (HL),45h
INC HL
LD (HL),45h
ADD HL,DE
LD (HL),46h
INC HL
LD (HL),47h
ADD HL,DE
LD (HL),0
INC HL
LD (HL),0
LD BC,0
LD D,32h
XOR A
R907D:
OUT (0FEh),A
XOR 18h
LD E,A
LD A,C
ADD A,D
ADD A,D
ADD A,D
LD B,A
LD A,E
R9088:
DJNZ R9088 ;$-00
DEC C
JR NZ,R907D ;$-0E
DEC D
JR NZ,R907D ;$-11
L9090:
XOR A
R9091:
LD (SHEET),A
LD A,3Fh
R9096:
LD HL,ATTR
LD DE,ATTR+1
LD BC,511
LD (HL),A
LDIR
LD BC,4
R90A5:
DJNZ R90A5 ;$-00
DEC C
JR NZ,R90A5 ;$-03
DEC A
JR NZ,R9096 ;$-15
LD A,(DEMO)
OR A
JP NZ,NEWSHT
R90B4:
CALL AIR_DOWN ;Drain air and add to the bonus.
JP Z,NEWSHT
LD HL,SCORBUF+5
CALL C90FE
LD IX,SCORBUF
LD C,6
LD DE,SCREEN + 4096 + 3*32 + 26
CALL PMESS
LD C,4
LD A,(AIR_MAJOR)
CPL
AND 3Fh
RLC A
LD D,A
R90D7:
LD A,0
OUT (0FEh),A
LD B,D
R90DC:
DJNZ R90DC ;$-00
LD A,18h
OUT (0FEh),A
LD B,D
R90E3:
DJNZ R90E3 ;$-00
DEC C
JR NZ,R90D7 ;$-0F
JR R90B4 ;$-34

R90EA:
LD (HL),30h
DEC HL
LD A,L
CP 2Ah
JR NZ,C90FE ;$+0E
LD A,8
LD (B8458),A
LD A,(NOMEN)
INC A
LD (NOMEN),A
C90FE:
LD A,(HL)
CP 39h
JR Z,R90EA ;$-17
INC (HL)
RET

C9105:
LD HL,(CONVEY_POS)
LD E,L
LD D,H
LD A,(CONVEY_LEN)
LD B,A
LD A,(CONVEY_DIR)
OR A
JR NZ,R9127 ;$+15
LD A,(HL)
RLC A
RLC A
INC H
INC H
LD C,(HL)
RRC C
RRC C
R9120:
LD (DE),A
LD (HL),C
INC L
INC E
DJNZ R9120 ;$-04
RET

R9127:
LD A,(HL)
RRC A
RRC A
INC H
INC H
LD C,(HL)
RLC C
RLC C
JR R9120 ;$-13

KONG: LD HL,WK_ATTR+6
CALL C921B
LD A,(B80DB)
CP 2
RET Z
LD A,(T7000 + 506h)
CP 10h
JP Z,L91F9
LD A,(T5E00+11*32+17)
OR A
JR Z,R9176 ;$+29
LD HL,T7000 + 0F71h
R9152:
LD A,(HL)
OR A
JR NZ,R916C ;$+18
DEC H
LD A,H
CP 77h
JR NZ,R9152 ;$-08
LD A,(ELEM_AIR)
LD (T5E00+11*32+17),A
LD (T5E00+12*32+17),A
LD A,72h ;Wall has opened. Change guardian's boundary.
LD (HGUARDS+13),A
JR R9176 ;$+0C

R916C:
LD (HL),0
LD L,91h
LD A,H
XOR 7
LD H,A
LD (HL),0
R9176:
LD HL,WK_ATTR+18
CALL C921B
JR NZ,R919D ;$+21
XOR A
LD (EUGHGT),A
INC A
LD (B80DB),A
LD A,(ELEM_AIR)
LD (BK_ATTR+2*32+15),A
LD (BK_ATTR+2*32+16),A
LD HL,T7000 + 2*32 + 15
LD B,8
R9194:
LD (HL),0
INC L
LD (HL),0
DEC L
INC H
DJNZ R9194 ;$-07
R919D:
LD A,(B80DB)
OR A
JR Z,L91F9 ;$+58
LD A,(EUGHGT)
CP 64h
JR Z,R91F3 ;$+4B
ADD A,4
LD (EUGHGT),A
LD C,A
LD D,10h
LD A,(BORDER) ;Border
R91B5:
OUT (0FEh),A
XOR 18h
LD B,C
R91BA:
DJNZ R91BA ;$-00
DEC D
JR NZ,R91B5 ;$-08
LD A,C
RLCA
LD E,A
LD D,83h
LD A,(DE)
OR 0Fh
LD L,A
INC DE
LD A,(DE)
LD H,A
LD D,81h
LD A,(AIR_MINOR)
AND 20h
OR 40h
LD E,A
LD C,0
CALL DRWFIX
LD HL,SCORBUF+3
CALL C90FE
LD A,(EUGHGT)
AND 78h
LD L,A
LD H,17h
ADD HL,HL
ADD HL,HL
LD A,L
OR 0Fh
LD L,A
LD A,6
JP C8E5F

R91F3:
LD A,2
LD (B80DB),A
RET

L91F9: LD A,(AIR_MINOR)
AND 20h
LD E,A
LD D,81h
LD HL,T6000+15
LD C,1
CALL DRWFIX
JP NZ,L8D06
LD A,44h ;Kong colour: Bright green
LD (WK_ATTR+1*32+15),A
LD (WK_ATTR+1*32+16),A
LD (WK_ATTR+15),A
LD (WK_ATTR+16),A
RET

C921B:
LD A,(WILLY_POS)
INC A
AND 0FEh
CP L
RET NZ
LD A,(WILLY_POS+1)
CP H
RET NZ
LD A,(ELEM_SWITCH+6)
LD H,75h
CP (HL)
RET NZ
LD (HL),8
INC H
LD (HL),6
INC H
LD (HL),6
XOR A
OR A
RET

C923A:
LD HL,(WILLY_POS)
LD DE,31
LD C,0Fh
CALL C925F
INC HL
CALL C925F
ADD HL,DE
CALL C925F
INC HL
CALL C925F
LD A,(WILLY_Y)
LD C,A
ADD HL,DE
CALL C925F
INC HL
CALL C925F
JR R927F ;$+22

C925F:
LD A,(ELEM_AIR)
CP (HL)
JR NZ,R9270 ;$+0D
LD A,C
AND 0Fh
JR Z,R9270 ;$+08
LD A,(ELEM_AIR)
OR 7
LD (HL),A
R9270:
LD A,(ELEM_FIRE1)
CP (HL)
JP Z,L8D05
LD A,(ELEM_FIRE2)
CP (HL)
JP Z,L8D05
RET

R927F:
LD A,(WILLY_Y)
DEFB 0DDh
LD H,83h ;LD XH,83h
DEFB 0DDh
LD L,A ;LD XL,A
LD A,(WILLY_DIR)
AND 1
RRCA
LD E,A
LD A,(WILLY_FRAME)
AND 3
RRCA
RRCA
RRCA
OR E
LD E,A
LD D,82h
LD B,10h
LD A,(WILLY_POS)
AND 1Fh
LD C,A
R92A2:
LD A,(IX+0)
LD H,(IX+1)
OR C
LD L,A
LD A,(DE)
OR (HL)
LD (HL),A
INC HL
INC DE
LD A,(DE)
OR (HL)
LD (HL),A
INC IX
INC IX
INC DE
DJNZ R92A2 ;$-15
RET

PMESS: LD A,(IX+0)
CALL C92CB
INC IX
INC E
LD A,D
SUB 8
LD D,A
DEC C
JR NZ,PMESS ;$-0E
RET

C92CB:
LD H,7
LD L,A
SET 7,L
ADD HL,HL
ADD HL,HL
ADD HL,HL
LD B,8
C92D5:
LD A,(HL)
LD (DE),A
INC HL
INC D
DJNZ C92D5 ;$-04
RET

C92DC:
LD A,(IY+0)
CP 0FFh
RET Z
LD C,A
LD B,0
XOR A
LD D,(IY+1)
LD A,D
CALL C932B
LD (HL),50h
LD E,(IY+2)
LD A,E
CALL C932B
LD (HL),28h
R92F8:
OUT (0FEh),A
DEC D
JR NZ,R9302 ;$+07
LD D,(IY+1)
XOR 18h
R9302:
DEC E
JR NZ,R930A ;$+07
LD E,(IY+2)
XOR 18h
R930A:
DJNZ R92F8 ;$-12
DEC C
JR NZ,R92F8 ;$-15
CALL C9337
RET NZ
LD A,(IY+1)
CALL C932B
LD (HL),38h
LD A,(IY+2)
CALL C932B
LD (HL),38h
INC IY
INC IY
INC IY
JR C92DC ;$-4D

C932B:
SUB 8
RRCA
RRCA
RRCA
CPL
OR 0E0h
LD L,A
LD H,59h
RET

C9337:
LD A,(KEMP)
OR A
JR Z,R9342 ;$+07
IN A,(1Fh)
BIT 4,A
RET NZ
R9342:
LD BC,0BFFEh
IN A,(C)
AND 1
CP 1
RET
;
; A great tract of empty space, containing source code for the code from X8854
;on.
;
X934C: DEFS 2482
;
; DEC E
; JR NZ,NOFLP6
; LD E,(HL)
; XOR 24
; NOFLP6 DJNZ TM51
; DEC C
; JR NZ,TM51
; NONOTE4 LD A,(DEMO)
; OR A
; JR Z,NODEM1
; DEC A
; JP Z,MANDEAD
; LD (DEMO),A
; LD BC,0FEh
; IN A,(C)
; AND 31
; CP 31
; JP NZ,START
; LD A,(KEMP)
; OR A
; JR Z,NODEM1
; IN A,(31)
; OR A
; JP NZ,START
; NODEM1 LD BC,0EFFEh
; IN A,(C)
; BIT 4,A
; JP NZ,CKCHEAT
;
; [JCE] Why use JPs here? JRs would do it nicely
;
; LD A,(CHEAT)
; CP 7
; JP NZ,CKCHEAT
; LD B,0F7h
; IN A,(C)
; CPL
; AND 31
; CP 20
; JP NC,CKCHEAT
; LD (SHEET),A
; JP NEWSHT
; CKCHEAT LD A,(CHEAT)
; CP 7
; JP Z,LOOP
; RLCA
; LD E,A
; LD D,0
; LD IX,CHEATDT
; ADD IX,DE
; LD BC,0F7FEh
; IN A,(C)
; AND 31
; CP (IX+0)
; JR Z,CKNXCHT
; CP 31
; JP Z,LOOP
; CP (IX-2)
; JP Z,LOOP
; XOR A
; LD (CHEAT),A
; JP LOOP
; CKNXCHT LD B,0EFh
; IN A,(C)
; AND 31
; CP (IX+1)
; JR Z,INCCHT
; CP 31
; JP Z,LOOP
; CP (IX-1)
; JP Z,LOOP
; XOR A
; LD (CHEAT),A
; JP LOOP
; INCCHT LD A,(CHEAT)
; INC A
; LD (CHEAT),A
; JP LOOP
; MANDEAD LD A,(DEMO)
; OR A
; JP NZ,NXSHEET
; LD A,H
; LPDEAD1 LD HL,5800h
; LD DE,5801h
; LD BC,1FFFh
; LD (HL),A
; LDIR
; LD E,A
; CPL
; AND 7
; RLCA
; RLCA
; RLCA
; OR 7
; LD D,A
; LD C,E
; RRC C
; RRC C
; RRC C
; OR 16
; XOR A
; TM21 OUT (254),A
; XOR 24
; LD B,D
; TM22 DJNZ TM22
; DEC C
; JR NZ,TM21
; LD A,E
; DEC A
; CP 3Fh
; JR NZ,LPDEAD1
; LD HL,NOMEN
; LD A,(HL)
; OR A
; JP Z,ENDGAM
; DEC (HL)
; JP NEWSHT
; ENDGAM LD HL,HGHSCOR
; LD DE,SCORBUF
; LD B,6
; LPHGH LD A,(DE)
; CP (HL)
; JP C,FEET
; JP NZ,NEWHGH
; INC HL
; INC DE
; DJNZ LPHGH
; NEWHGH LD HL,SCORBUF
; LD HL,HGHSCOR
; LD BC,6
; LDIR
; FEET LD HL,4000h
; LD DE,4001h
; LD BC,0FFFh
; LD (HL),0
; LDIR
; XOR A
; LD (EUGHGT),A
; LD DE,MANDAT+64
; LD HL,488Fh
; LD C,0
; CALL DRWFIX
; LD DE,0B6E0h
; LD HL,48CFh
; LD C,0
; CALL DRWFIX
; LOOPFT LD A,(EUGHGT)
; LD C,A
; LD B,83h
; LD A,(BC)
; OR 0Fh
; LD L,A
; INC BC
; LD A,(BC)
; SUB H
; LD H,A
; LD DE,0BAE0h
; LD C,0
; CALL DRWFIX
; LD A,(EUGHGT)
; CPL
; LD E,A
; XOR A
; LD BC,40h
; TM111 OUT (254),A
; XOR 24
; LD B,E
; TM112 DJNZ TM112
; DEC C
; JR NZ,TM111
; LD HL,5800h
; LD DE,5801h
; LD BC,1FFh
; LD A,(EUGHGT)
; AND 0Ch
; RLCA
; OR 47h
; LD (HL),A
; LDIR
; LD A,(EUGHGT)
; ADD A,4
; LD (EUGHGT),A
; CP 0C4h
; JR NZ,LOOPFT
; LD IX,MESSG
; LD C,4
; LD DE,40CAh
; CALL PMESS
; LD IX,MESSO
; LD C,4
; LD DE,40D2h
; CALL PMESS
; LD BC,0
; LD D,6
; TM91 DJNZ TM91
; LD A,C

MEMTOP: DEFB 9,'A' ;The remains of "AND 7"
;
; - and at this point, the manuscript comes to an end
;
TITLEMSG:
DEFB '. . . . . .'
DEFB ' . . . . . MANIC'
DEFB ' MINER . . '
DEFB 7Fh
DEFB ' BUG-BYTE ltd. 1983'
DEFB ' . . By Matthew Smith'
DEFB ' . . . Q to P = Left'
DEFB ' & Right . . Bottom'
DEFB ' row = Jump . . A'
DEFB ' to G = Pause . .'
DEFB ' H to L = Tune On/Off'
DEFB ' . . . Guide Miner'
DEFB ' Willy through 20'
DEFB ' lethal caverns .'
DEFB ' . . . . . '
DEFB ' . .'

END
;
;(C) 1983,1984,1999,2000 Matthew Smith - all rights reserved
;
Neregistrovaný: iluze
25.9.2013 21:21:10
iluze Odpovědět Permalink odkaz na tento post Tento příspěvek stojí za přečtení Tento příspěvek nebyl pochválen 2x
Eestimaal
To je čubka!
25.9.2013 18:50:08
Bůh Odpovědět Permalink odkaz na tento post Tento příspěvek stojí za přečtení Tento příspěvek nebyl pochválen 1x

Uživatel RoBoTech se stal moderátorem

Odteď bude tomuto foru sloužit do roztrhání těla, mazat a administrovat dle pravidel a spravedlivě dle nejlepšího svědomí a božích příkazů. Amen
25.9.2013 16:18:31
Ondra_T Odpovědět Permalink odkaz na tento post Tento příspěvek stojí za přečtení Tento příspěvek nebyl pochválen 1x
www.ondrej-tobias.cz (fotky z akcí od roku 2003)..
obrazek
Neregistrovaný: cheap ugg boots online
22.8.2013 09:07:06
cheap ugg boots online Odpovědět Permalink odkaz na tento post Tento příspěvek stojí za přečtení Tento příspěvek nebyl pochválen 0x
UGG Bailey Button Triplet have classic and obvious designer buttons details. Kid's UGG Boots sale is a legendary brand, it is famous cheap Men's UGG Classic Short for its ugly appearance and then become popular in the whole world UGG Boots New Style on sale because a lot of stars are crazy about them. Now, UGG has a lot of UGG Bailey Button online fans in China and Japan. If you wanna buy a pair of UGG Bailey Button Triplet sale, pls come to our online shop, we have a lot of ugg boots in stock.
9.8.2013 11:13:05
iluze Odpovědět Permalink odkaz na tento post Tento příspěvek stojí za přečtení Tento příspěvek nebyl pochválen 1x
Eestimaal
Nojo...uz jste vsichni stari a trapni.
9.8.2013 10:38:52
RoBoTech Odpovědět Permalink odkaz na tento post Tento příspěvek stojí za přečtení Tento příspěvek nebyl pochválen 0x
http://www.idj.cz/robotech/

to: pepe

ja bych ho i smazal, ale nejak toto forum nema moderatora... :(
8.8.2013 18:20:57
pan_gazpacho Odpovědět Permalink odkaz na tento post Tento příspěvek stojí za přečtení Tento příspěvek nebyl pochválen 1x
http://gazpacho.wz.cz
no hurá. to byla má testovací zpráva, jestli jste tu na rejvu všichni náhodou nepochcípali.
Provozovatel neručí a nenese zodpovědnost za obsah diskusních příspěvků, diskuse nemoderuje ani nerediguje. Diskusní příspěvky vyjadřují názor jejich autorů. Provozovatel si vyhrazuje právo odstraňovat diskusní příspěvky, a to zejména takové, které odporují dobrým mravům, porušují platné zákony ČR (např. obsahují vulgární výrazy, nadávky, rasistické, xenofobní či šovinistické narážky) poškozují dobré jméno provozovatele nebo obsahují neplacenou reklamu. Provozovatel má vždy pravdu, na fórech vládne osvícená diktatura, demokracie se - jak ukazují dějiny neosvědčila.
REKLAMA



REKLAMA
HOT FOTKY
MEDIA PARTNER
Christmas Zone 5
26.12

Christmas Zone 5

Favál
VÍTĚZ FLYERÁDY
DOPORUČUJEME
RAVE.cz - hudební server nejen o taneční scéně