If you appreciate the work done within the wiki, please consider supporting The Cutting Room Floor on Patreon. Thanks for all your support!

Net Wars

From The Cutting Room Floor
Jump to navigation Jump to search

Title Screen

Net Wars

Developer: Orca
Publisher: Esco Trading Co.
Platform: Arcade (Orca Marine Boy hardware)
Released internationally: 1983


DevTextIcon.png This game has hidden development-related text.


Uncompiled Source

There's some source code hidden in the game, one of three known games from Orca with such an instance. This time, it's at the end of netw2.4r.

         D	A,(HL)		; GET COOR.OF Y
	CP	BYULMT		; UPPER LIMIT ?
	JR	NC,BUL050	; IF YES
	CP	BYLLMT		; LOWER LIMIT ?
	JR	C,BUL050	; IF YES
	LD	(HL),A		; SET Y COORDINATE
	EXX			; SAVE REG.
	LD	HL,DIPSW2
	BIT	6,(HL)		; UPRIGHT ?
	JR	NZ,BUL030	; IF YES
	LD	HL,COM020
	BIT	6,(HL)		; 2 UP ?
	JR	Z,BUL030	; IF YES
	NEG			; GET THE ABUSOLUTE VALUE
BUL030	EQU	$
	SUB	8
	EXX			; GET REG.
	PUSH	HL		; SAVE TAG ADDR.
	RLC	C
	RLC	C		; * 4
	LD	HL,BUOFST	; GET OFFSET TABLE
	ADD	HL,BC
	ADD	A,(HL)
	LD	(IY+4),A	; SET OBJ Y
	SUB	(HL)
	INC	HL
	ADD	A,(HL)
	LD	(IY+9),A	; SET OBJ Y
	LD	(TCB140),HL	; SAVE OFFSET TABLE ADDR.
	POP	HL		; GET TAG ADDR.
	INC	HL
	INC	DE
	LD	A,(DE)		; GET X VECTOR
	ADD	A,(HL)		; GET COOR.OF X
	CP	BXRLMT		; RIGHT LIMIT ?
	JR	NC,BUL040	; IF YES
	CP	BXLLMT		; LEFT LIMIT ?
	JR	NC,BUL070	; IF NO
BUL040	EQU	$
	DEC	HL
BUL050	EQU	$
	XOR	A
	LD	(IY),A		; BULLET OBJ CLEAR
	LD	(IY+4),A	; "	"	"
	LD	(IY+5),A
	LD	(IY+9),A
	LD	(HL),A		; CLEAR Y COORDINATE
	INC	HL
	LD	DE,COM130
	LD	A,(DE)		; GET OBJ COUNTER
	DEC	A
	LD	(DE),A		; COUNT DOWN OBJ NUMBER
	JR	BUL105
BUL070	EQU	$
	LD	(HL),A		; SET X COORDINATE
	NEG			; GET THE ABUSOLUTE VALUE
	PUSH	HL		; SAVE TAG ADDR.
	LD	HL,(TCB140)	; GET OFFSET TABLE ADDR.
	INC	HL
	ADD	A,(HL)
	LD	(IY+2),A	; SET OBJ X
	SUB	(HL)
	INC	HL
	ADD	A,(HL)
	LD	(IY+7),A	; SET OBJ X
	POP	HL		; GET TAG ADDR.
	LD	(IY),-1		; DISPLAY
	LD	(IY+5),-1
BUL105	EQU	$
	INC	HL
BUL110	EQU	$
	INC	HL
	INC	HL		; GET NEXT TAG ADDR.
	LD	DE,10
	ADD	IY,DE		; OBTAIN OBJ QUE ADDR.
	EX	AF,AF'		; RECOVER LOOP COUNTER
	DEC	A		; LOOP END ?
	JP	NZ,BUL010	; IF NO
	LD	A,(COM130)	; GET OBJ COUNT
	AND	A
	JR	Z,BUL150	; IF YES
	CP	2
	RET	NZ
	LD	IX,TAGBUL	; GET TAG HEAD ADDR.
	LD	A,(IX+1)	; GET COOR.OF X
	CP	(IX+5)		; SAME COOR.OF X ?
	RET	NZ		; IF NO	
	INC	(IY-18)
	INC	(IY-13)
	DEC	(IY-8)
	DEC	(IY-3)
	RET
BUL150	EQU	$
	LD	A,(TCB)		; SET TASK #
	RST	DETACH		; DETACH MYSELF
	RET
;
;	TAG & OBJQUE CLEAR
;
BUL400	EQU	$
	LD	HL,TAGBUL	; SET TAG HEAD
	LD	DE,TAGBUL+1
	LD	BC,4*2-1	; SET SIZE
	XOR	A		; CLEAR A
	LD	(HL),A
	LDIR			; ALL TAG CLEAR
	LD	HL,OBJQUE+40	; SET OBJQUE HEAD
	LD	DE,OBJQUE+41
	LD	BC,5*4-1	; SET SIZE
	LD	(HL),A
	LDIR			; ALL OBJQUE CLEAR
	JR	BUL150
;
BURBND	EQU	$
	LD	A,(TCB040)	; GET FLAG TCB
	RRA
	RET	C
	LD	A,1
	LD	(TCB040),A
	INC	HL
	LD	A,C
	ADD	A,8
	AND	0FH
	LD	C,A
	OR	90H
	LD	(HL),A
	INC	HL
	LD	(HL),2
	DEC	HL
	DEC	HL
	RET
;
;	BULLET VECTOR TABLE
;	Y OFFSET , X OFFSET
;
BUFTBL	EQU	$		; FIGHTER-SIDE
	DEFB	8,0		; 0
	DEFB	7,3		; 1
	DEFB	6,6		; 4
	DEFB	3,7		; 3
	DEFB	0,8		; 4
	DEF

There's more in the second graphics ROM. This seems to be text from a Z80 linking loader:

0x01E1
ENTER STARTING LINK ADDRESS
0x0940
UNDEFINED  SYMBOLS
0x0956
INTERNAL SYMBOLS
0x096A
EXTERNAL SYMBOLS
0x0980
  NAME TYP VALUE DEF   REFERENCE