; This code shows the 'art of coding' a weapon

	MOVEQ	#2,D0		; 2
	LSL.L	#1,D0		; 4
	MOVE.W	D0,A0
	MOVE.L	(A0),A0		; SysBase
	LEA	-$59(A0),A1
	SUB.W	#$2B,A1
	EXG	A6,A0
	JSR	(A1)		; Forbid
	LEA	-$11(A1),A0
	MOVE.L	A1,A6
	LEA	$20F(A0),A1	; LibList
.loop
	MOVE.L	(A1),D0
	BEQ.B	.end
	SUB.L	A1,A1
	ADDQ.L	#4,D0
	LEA	6(A1,D0.L),A1
	MOVEQ	#-6,D1
	ADD.L	A1,D1
	SUBQ.L	#4,D1		; ln_Next
	MOVE.L	(A1),D0		; ln_Name (Library Name)
	BEQ.B	.next
	MOVE.L	D0,A1
	MOVE.W	(A1)+,D0	; hr
	SUB.W	(A1)+,D0	; hr - gb
	BMI.B	.next
	LSR.W	#4,D0
	SUB.W	#17,D0
	BNE.B	.next
	SUB.W	(A1)+,D0	; li
	ADD.W	(A1)+,D0	; tt
	BMI.B	.next
	ADD.B	1(A1),D0	; r
	SUB.B	(A1)+,D0	; e
	ROL.W	#8,D0
	SUBQ.B	#8,D0
	BNE.B	.next
	SUB.W	#$1800,D0
	BNE.B	.next
	SUB.L	A0,A0
	SUB.W	#$4D,D0
	LEA	(A0,D0.W),A0
	MOVE.B	#$75,(A0,D1.L)	; JMP 4eF9 xxxx xxxx >  RTS 4e75
	BRA.B	.end
.next
	MOVE.L	D1,A1
	BRA.B	.loop

.end
	RTS
