	NOLIST
;************************************************************************
;*	objective sprite structure definition		Object.def	*
;************************************************************************
;
;----------------------------------------------------------------------
objstart	equ	070H
;----------------------------------------------------------------------
debug_mode	EQU	1	; 最終的には 0 にする
;----------------------------------------------------------------------
A_button	EQU	0000000010000000B
X_button	EQU	0000000001000000B
L_button	EQU	0000000000100000B
R_button	EQU	0000000000010000B

B_button	EQU	1000000000000000B
Y_button	EQU	0100000000000000B
SL_button	EQU	0010000000000000B
ST_button	EQU	0001000000000000B
UP_button	EQU	0000100000000000B
DW_button	EQU	0000010000000000B
LF_button	EQU	0000001000000000B
RT_button	EQU	0000000100000000B
;----------------------------------------------------------------------
sprite_count	EQU	sprite_countA
;		EQU	sprite_countB
A_pose_Q	EQU	camera_direction+0
B_pose_Q	EQU	camera_direction+2
;======================================================================
;
;=== CONST =============================================================
min_patern	EQU	140H	;車の最小転送パラメータ
min_item	EQU	10*2	;アイテムの最小転送パラメータ
;=======================================================================
;************************************************************************
;	SPRITE CONTROL REGISTER
;************************************************************************
				; -- スクリーンＡ（上画面）--
_backward_A	EQU	000H	;(2byte) 逆方向ポインタ
_forward_A	EQU	002H	;(2byte) 順方向ポインタ
_object_A	EQU	004H	;(2byte) ＯＢＪアドレス
_distance_A	EQU	006H	;(2byte) カメラからの距離（近いほうが大）
;----------------------------------------------------------------------
				; -- スクリーンＢ（下画面）--
_backward_B	EQU	008H	;(2byte) 逆方向ポインタ
_forward_B	EQU	00AH	;(2byte) 順方向ポインタ
_object_B	EQU	00CH	;(2byte) ＯＢＪアドレス
_distance_B	EQU	00EH	;(2byte) カメラからの距離（近いほうが大）
;-----------------------------------------------------------------------
_flag		EQU	010H	;(2byte) ＯＢＪフラグ
_status		EQU	012H	;(2byte) ＯＢＪステータス
_attribute	EQU	014H	;(2byte) アトリビュート
;-----------------------------------------------------------------------
				; -- ＯＢＪワールド座標 --
_situationXL	EQU	016H	;(4byte) **** **** **** ****.
_situationXH	EQU	018H	;	.**** **** DDDD DDDD
_situationYL	EQU	01AH	;(4byte) **** **** **** ****.
_situationYH	EQU	01CH	;	.**** **** DDDD DDDD
_situationZL	EQU	01EH	;(4byte) **** **** **** ****.
_situationZH	EQU	020H	;	.**** **** DDDD DDDD
;----------------------------------------------------------------------
				; -- ＯＢＪスピードベクトル --
_velocityX	EQU	022H	;(2byte) SSS* **** . **** ****
_velocityY	EQU	024H	;(2byte) SSS* **** . **** ****
_velocityZ	EQU	026H	;(2byte) SSS* **** . **** ****
;----------------------------------------------------------------------
				; -- ＯＢＪの角度 --	
_poseP		EQU	028H	;(2byte) 垂直方向 S*** **** . **** ****
_poseQ		EQU	02AH	;(2byte) 水平方向 S*** **** . **** ****
;----------------------------------------------------------------------
				; -- スクリーンＡ（上画面）--
_posH_A		EQU	02CH	;(2byte) 0FF00H - 0FFFFH　のとき画面内   
_posV_A		EQU	02EH	;(2byte) 0FF00H - 0FFFFH  のとき画面内
_ptn_A		EQU	030H	;(2byte) パターンナンバー(asl済み) 
;----------------------------------------------------------------------
				; -- スクリーンＢ（下画面）--
_posH_B		EQU	032H	;(2byte) 0FF00H - 0FFFFH　のとき画面内
_posV_B		EQU	034H	;(2byte) 0FF00H - 0FFFFH  のとき画面内
_ptn_B		EQU	036H	;(2byte) パターンナンバー(asl済み) 
;----------------------------------------------------------------------
_shadow_A	EQU	038H	;(2byte) shadow position V psoition
_shadow_B	EQU	03AH	;(2byte)		 V position
_shadow_BX	EQU	03CH	;(2byte) EXTRA shadow position V position
_posH_BX	EQU	03EH	;(2byte) EXTRA position H      H position
;
;
;======================================================================
;
;
; 障害物用
;- - - - - - - - - - - - 
_initposX	equ	28h	; プクプク動き範囲制御用
_initposY	equ	2ah	;
;- - - - - - - - - - - - 
_pole_status	equ	08h	; 障害物メインステータス
_pooQ		equ	0ah	;
_pole_work	equ	0ch
;- - - - - - - - - - - - 
_option_owner	equ	70h	; バトル用オプションボール
_option_Q	equ	72h	;
;- - - - - - - - - - - - 



;----------------------------------------------------------------------
; カート用
;- - - - - - - - - - - - 
_rank_back	equ	040h	;
_rank_timer	equ	042h	;
;		equ	044h	; 
;XXXXX		equ	046h	; = anime_pointer	( 1LOST )
;XXXXX		equ	048h	; = anime_timer		( 1LOST,首振り）
;XXXXX		equ	04ah	; = anime_mail		( 1LOST )
;XXXXX		equ	04ch	; = anime_bank		( 1LOST )
_HP		equ	04eh	; ＯＢＪの強さ
_crash_index	equ	050h	; 
_crash_timer	equ	052h	; 
_crash_position	equ	054h	; 
_crash_side	equ	056h	; 
_BGcheck_back	equ	058h	; BG ADRESS ( キャラ単位アドレス )
_BGcheck_flag	equ	05ah	; 衝突フラグ
_unable_control	equ	05ch	; control不能 タイマ ( 衝突可 )
_hit_timer	equ	05eh	; control不能 タイマ ( ＯＢＪ衝突不可 ）
;- - - - - - - - - - - - - - - - - - - - - - - - - - 
_poo_status	equ	060h	; チョロプーのひっつき
_obake_bound	equ	062h	; おばけのつぎめバウンドカウンタ
;-KIMURA-	equ	064h	; -KIMURA- ( 1UP )
_1up_status	equ	064h

;		equ	066h	;
;- - - - - - - - - - - - 
_BGcheck_status	equ	068h	;
;XXXXX		equ	06ah	; = fire_register
_kart_char_A	equ	06ch	; 特殊キャラクタ表示 (Ascreen)
_kart_char_B	equ	06eh	;	//	     (Bscreen)
;- - - - - - - - - - - - - - - - - - - - - - - - - - -
_dmindex	equ	070h	; デモ用 分岐 index
_dmprocess	equ	072h	; デモ用 プロセス index
_dmpointer	equ	074h	; デモ用 汎用ポインタ
_dmtimer	equ	076h	; デモ用 汎用タイマ
_dmsX		equ	078h	; デモ用 X position
_dmsY		equ	07ah	; 	 Y position
_dmvX		equ	07ch	;	 X velocity
_dmvY		equ	07eh	;	 Y velocity
;- - - - - - - - - - - - - - - - - - - - - - - - - -
_dmC		equ	080h	; デモ用 キャラクターパターン
_obake_timer	equ	082h	;
_sunder_timer	equ	084h	; 
_muteki_timer	equ	086h	; 無敵タイマ
_kart_pose	equ	088h	; 振り向きフラグ
;		equ	08Ah	;
_effect_flag	equ	08Ch	; カート各種フラグ
_fall		equ	08Eh	; おっこちトリガ
;- - - - - - - - - - - - - - - - - - - - - - - - - -
_backward_dist	equ	090h	; 後方向カート距離		
_forward_dist	equ	092h	; 前方向カート距離		
_backward_kart	equ	094h	; 後方向カート index
_forward_kart	equ	096h	; 前方向カート index
_kart_X		equ	098H	; (自分のカートの座標)
_kart_Y		equ	09aH	; ( 	//	)
_kart_P		equ	09cH	; (	//	のアングル）
_kart_handle	equ	09eh	; ハンドルのタイマ
;- - - - - - - - - - - - - - - - - - -
; デモカート用ワーク
;- - - - - - - - - - - - - - - - - - -
_demokart_trans	EQU	090H	; ( demokart )
_demokart_size	EQU	092H	; ( demokart )
;_dispX		EQU	094H	; ( demokart )
;_dispY		EQU	096H	; ( demokart )
;----------------------------------------------------------------------
; アイテム用
;- - - - - - - - - - - - 
_missile_timer	equ	040h	; 赤ガメ用サーチ不能タイマ
_item_status	equ	042h	; カベ あたり check ON/OFF
_itemX		equ	044h	; アイテム初期セット位置 
_itemY		equ	046h	;
;XXXXX		equ	048h	; = anime_timer
;		equ	04ah	;
;		equ	04ch	;
;XXXXX		equ	04eh	; = _HP
;-X-		equ	050h	; _crash_index
;-X-		equ	052h	; _crash_timer
;-X-		equ	054h	; _crash_position
;-X-		equ	056h	; _crash_side
;XXXXX		equ	058h	; = _BGcheck_back
;XXXXX		equ	05ah	; = _BGcheck_flag
;XXXXX		equ	05ch	; = _unable_control
;XXXXX		equ	05eh	; = _hit_timer
;- - - - - - - - - - - - - - - - - - - - - - - - - - 
_item_backward	equ	060H	; 使用頻度ポインタ
_item_forward	equ	062H	;
_rockon_index	equ	064H	; ロックオンした index
_keikoku_timer	equ	066H	; バナナセット警告タイマ
;XXXXX		equ	068h	; = BGcheck_status
;- - - - - - - - - - - - - - - - - - - - - - 
_fire_register	equ	06ah	; 発射カートのインデックス
_item_wait	equ	06ch	; アイテム表示 ウエイトタイマ
_item_register	equ	06eh	; アイテムの動き no.
_item_no	equ	070h	; アイテムの種類 no.
_item_speed	equ	072h	; アイテムの初期スピード
_transA		equ	074h	; 古い転送アドレス( OAMSET用 )
_transB		equ	076h	; 
_transAnew	equ	078h	; 新しい転送アドレス
_transBnew	equ	07ah	;
_item_workA	equ	07ch	; アイテム種類オフセットアドレス
_item_workB	equ	07eh	;
;----------------------------------------------------------------------
; ジュゲム用 / けむり用
;- - - - - - - - - - - - 
_anime_number	EQU	040H	; DATA number
_anime_register	EQU	042H	; SEQ DATA address (offset)
_anime_start	EQU	044H	; SEQ start
_anime_pointer	EQU	046H	; SEQ pointer
_anime_timer	EQU	048H	; FRAME timer
_anime_mail	EQU	04AH	; SEQ end
_anime_bank	EQU	04CH	; DATA bank
_anime_attr	EQU	04EH	; animation attribute
;- - - - - - - - - - - - 
;		50h ... 7eh	no use
;----------------------------------------------------------------------
; カート走行用ワーク
;- - - - - - - - - - - - 
;
_vF		EQU	vector_velocity
_vFangle	EQU	move_direction
;		EQU	0A4H
;		EQU	0A6H
;		EQU	0A8H
;		EQU	0AAH
;		EQU	0ACH
;		EQU	0AEH	; BGcheck status number
;		EQU	0B0H
_handle		EQU	0B2H	; handle status
;		EQU	0B4H
;		EQU	0B6H
;		EQU	0B8H
_trans_ptn_A	EQU	0BAH	;(2byte) ptn_A old
_trans_ptn_B	EQU	0BCH	;(2byte) ptn_B old
;		EQU	0BEH	;(2byte)
_lap		EQU	0C0H
;		EQU	0D0H
;		EQU	0E0H
;		EQU	0F0H
;----------------------------------------------------------------------
;
;
;
;
;
;
;************************************************************************
;		SPRITE CONTROL WORK ( 0 PAGE )
;************************************************************************
;------- common work ----------------------------------------------------
pos_H		EQU	010H
pos_V		EQU	011H
attr		EQU	012H
block_pointer	EQU	014H
offset_V	EQU	016H
size		EQU	018H
attribute	EQU	01AH
position_H	EQU	01CH
position_V	EQU	01EH

;-------OBJ system control register--------------------------------------
A_root		EQU	0B0H	;(+0 pointer)
A_backward	EQU	0B0H	;(2byte)	Screen A
A_forward	EQU	0B2H	;(2byte)	Screen A
B_root		EQU	0B4H	;(+8 pointer)		
register	EQU	0B4H	;(2byte)
SEQ_register	EQU	0B6H	;(2byte)
screen_register	EQU	0B8H	;(2byte)
screen_obj_V	EQU	0BAH	;(2byte)
B_backward	EQU	0BCH	;(2byte)	Screen B
B_forward	EQU	0BEH	;(2byte)	Screen B
;
pipe_A_root	EQU	0C0H	;(+0 pointer)
pipe_A_backward	EQU	0C0H	;(2byte)	Screen A
pipe_A_forward	EQU	0C2H	;(2byte)	Screen A
pipe_B_root	EQU	0C4H	;(+0 pointer)
pipe_B_backward	EQU	0C4H	;(2byte)	Screen B
pipe_B_forward	EQU	0C6H	;(2byte)	Screen B
;- - - - - - - - -
player_index	EQU	0C8H	; player 1 index
;		EQU	0CAH	; player 2 index
;- - - - - - - - -
screen_sub	EQU	0CCH
screen_oam	EQU	0CEH
;=======================================================================
;************************************************************************
;		WORK
;************************************************************************
sprite_Abuffer	EQU	200H
sprite_Bbuffer	EQU	420H
sprite_H	EQU	0
sprite_V	EQU	1
sprite_C	EQU	2
sprite_A	EQU	3
sprite_E	EQU	200H
;======================================================================
round_process	equ	0f80h	; ラウンドメッセージ表示用
round_timer	equ	0f82h	;
round_pointer	equ	0f84h	;
;- - - - - - - - - - - - - - - - - -
time_index	equ	0f86h	;(2) 時間切れチェック
rankout_SEtimer	equ	0f88h	;(4) ランクアウトサウンドタイマ
;							
window_timer	equ	0f8ch
;
result_status	equ	0f90h	;(4) リザルト時のチェック用フラグ
goal_jugem	equ	0f94h	;(2)
;
pole_object_A	equ	0f98h	;(2)
pole_object_B	equ	0f9Ah	;(2)
pole_attribute	equ	0f9Ch	;(2)
;
demo_camera	equ	0f9eh	;(2) リプレイ時のカメラモード
sand_camera	equ	0fa0h	;(2) リプレイ時のけむりセレクト
record_flag	equ	0fa2h	;(2) レコード ON/OFF FLAG
pause_retire	equ	0fa4h	;(2) ポーズリタイア
overflow_check	equ	0fa6h	;(2) オーバーフローのチェック
nmi_overflow	equ	0fa8h	;(2) NMI オーバーフローのチェック
screen_sound_A	equ	0faah	;(3) サウンドジャンプ先 A 画面
screen_sound_B	equ	0fadh	;(3) サウンドジャンプ先 B 画面
;- - - - - - - - - - - - - - - - - -
backup_trigger	equ	0fb0h	;(2) バックアップのトリガ
backup_timer	equ	0fb2h	;(2) 表示消去タイマ
dark_map	equ	0fb4h	;(2) おばけ／レインボー マップ
pause_entry	equ	0fb6h	;(2) ポースしたフラグ！
sand_index	equ	0fb8h	;(2) けむり 大小選択 index
mode_distance	equ	0fbah	;(2) 距離による OBJ の消去
GP_limitter	equ	0fbch	;(2) GP MODE リミッター
over_timer	equ	0fbeh	;(2) GP MODE 処理オーバタイマ
;- - - - - - - - - - - - - - - - - -
coin_flag	equ	0fc0h
color_counter	equ	0fc4h
netdata_offset	equ	0fc6h
;- - - - - - - - - - - - - - - - - -
pause_work	equ	0fc8h	; ポーズ時上下画面セットワーク
gameover_1lost	equ	0fcah	; (4byte) ゲームオーバー FLAG
;- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -


danger_status	equ	0fd0h	;
process_meter	equ	0fd2h	; 処理オーバーカウンターメータ
danger_timer	equ	0fd4h	;

goal_kabe	equ	0fd6h	; 

;
nuki_color	equ	0fd8h	; ( 4byte )
;

screen_sound	equ	0fdch	; A,B mode 時のトリガサウンド
screen_player	equ	0fe0h	; A,B mode 時のプレイヤーindex
screen_coin	equ	0fe2h	; A,B mode 時のコインワーク
screen_jugem	equ	0fe4h
;
;- - - - - - - - - - - - - - - - - -
fire_random	equ	0fe6h	; 敵車攻撃抽選乱数
fire_counter	equ	0fe8h	; ウエイトタイマ
fire_flag	equ	0feah	; 攻撃パターンナンバ
fire_long	equ	0fech	; 攻撃カート index
fire_process	equ	0feeh	; 攻撃カート process
;- - - - - - - - - - - - - - - - - -
kart_register	equ	0ff0h	
pipe_register	equ	0ff4h
;		equ	0ff8h
polehit_1	equ	0ffch	
polehit_2	equ	0ffeh
;======================================================================
meter_screen_A	EQU	0C00H		; BG3 meter buffer
meter_screen_B	EQU	0C80H
meter_address	EQU	0D00H
meter_bank	EQU	0D04H

best_number	equ	0d0ah
best_Voffset	equ	0d0ch
best_flag	equ	0d0eh	; ベストラップ
;- - - - -- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
trigger_common	EQU	0D10H	; 1p,2p common
trigger_repeat	EQU	0D12H	; 1p trigger
;			0D14H	; 2p trigger
repeat_work	EQU	0D16H
;			0D18H
;- - - - -- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
demokart_frame	EQU	0D1AH
demokart_count	EQU	0D1CH
;- - - - -- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
random_number	EQU	0D20H
coin_count	EQU	0D22H	; 4byte
;- - - - - - - - - - - - - - - - - - - - - - 
;obj_type	EQU	0D26H
course_type	EQU	0D28H
coin_erase_char	EQU	0D2AH
course_level	EQU	0D2CH
block_erase_char	EQU	0D2EH
;- - - - -- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
network_value	equ	0d30h	; ( ds 18 )
;			0d48h
;- - - - - - - - - - - - - - - - - - - - - - -
;- - - 
battle_HP	equ	0d4ch
;			0d4eh
;- - - - - - - - - - - - - - - - - - - - - - -
erase_objtimer0	EQU	0D50H	; window -> map 時の obj erase
erase_objtimer1	EQU	0D52H	; map -> window 時の obj erase
goalin_winner	EQU	0D54H
;- - - - - - - - - - - - - - - - - - - - - - -
goal_wait	equ	0d56h	; 4byte
;
;
;- - - - - - - - - - - - - - - - - - - - - - - - - - 
item_root	EQU	0D00H
;;;		EQU	0D60H	; item backword
;;;		EQU	0D62H	; item forword
;- - - - - - - - - - - - - - - - - - - - - - - - - - 
shadow_counter	equ	0d64h	; 4byte
;- - - - - - - - - - - - - - - - - - - - - - - - - - 
;
;- - - - - - - - - - - - - - - - - - - - - - - - - - 
ghost_error	equ	0d68h	
bando_off	equ	0d6ah	; 2byte
bando_timer	equ	0d6ch	; 2byte
;- - - - - - - - - - - - - - - - - - - - - - - - - - 
maptype_color	equ	0d6eh	; 0 色加算モード
				; 2 色減算モード
;- - - - -- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
slot_flag	EQU	0D70H
slot_pointer	EQU	0D74H
slot_timer	EQU	0D78H
slot_result	EQU	0D7CH
;- - - - -- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
BGtrans_value	EQU	0D80H		;(DS 70H)
OBJtrans_value	EQU	0DE0H		;(DS 20H)
;======================================================================
;************************************************************************
;	カート/障害/アイテム ワークエリア
;************************************************************************
				; バトルモード専用
bar_r6		EQU	0800H
bar_r7		EQU	0880H
bar_r8		EQU	0900H
bar_r9		EQU	0980H
bar_rA		EQU	0A00H
bar_rB		EQU	0A80H
;----------------------------------------------------------------------
				;カート専用ワーク
player_r0	EQU	1000H
player_r1	EQU	1100H
player_r2	EQU	1200H
player_r3	EQU	1300H
player_r4	EQU	1400H
player_r5	EQU	1500H
player_r6	EQU	1600H
player_r7	EQU	1700H
;- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 
				; - - - VS - - - 
pole_r4		EQU	1238H	; XXXXX
pole_r5		EQU	1338H	; XXXXX

kame_r2		EQU	1438H	; アイテム ５
kame_r3		EQU	1538H	; アイテム ６ 
kame_r4		EQU	1638H	; アイテム ７
kame_r5		EQU	1738H	; アイテム ８
;----------------------------------------------------------------------
				;- - GP - - -  - - - VS - - - - - -TM - -
pole_r0		EQU	1800H	; 障害 １	障害 １		障害 １
pole_r1		EQU	1880H	; 障害 ２	障害 ２		障害 ２
pole_r2		EQU	1900H	; 障害 ３	障害 ３		障害 ３
pole_r3		EQU	1980H	; 障害 ４	障害 ４		障害 ４	 
;----------------------------------------------------------------------
item_r0		EQU	1A00H	; アイテム 1
item_r1		EQU	1A80H	; アイテム 2
item_r2		EQU	1B00H	; アイテム 3
item_r3		EQU	1B80H	; アイテム 4
;- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 
jugem_r0	EQU	1C00H	; ジュゲム １Ｐ
jugem_r1	EQU	1C80H	; ジュゲム ２Ｐ
;************************************************************************
;	ワークエリア
;************************************************************************
lap_bufferA	EQU	1D00H
lap_bufferB	EQU	1D40H
;- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 
trans_count	EQU	1D80H		; counter & flag
trans_address	EQU	1D82H
trans_bank	EQU	1D84H
trans_vram	EQU	1D86H
;- - - - - - - - - - - - - - - - - -
pause_timer	EQU	1D88H
;
oamcut_flag	equ	1d8ch
;		equ	1d8eh

;- - - - - - - - - - - - - - - - - -
gameover_flag	EQU	1D90H

network_index	EQU	1DA0H	;( through 1DBFH )

jugem_flag	EQU	1DC0H
;		EQU	1DC4H
;----------------------------------------------------------------------
pause_trans	EQU	1DC8H
pause_cursor	EQU	1DCAH
goal_flag	EQU	1DCEH
;----------------------------------------------------------------------
TV_no		EQU	1DD0H
TV_wait		EQU	1DD4H
;- - - - - - - - - - - - - - - 
p1_index	EQU	1DD8H
p2_index	EQU	1DDAH
camera_FG	EQU	1DDCH
camera_dX	EQU	1DE0H
camera_dY	EQU	1DE4H
camera_dQ	EQU	1DE8H
camera_timer	EQU	1DECH		; かさなっているぞ
;- - - - - - - - - - - - - - - 
timestate	EQU	1DECH		;
goalmail	EQU	1DF0H	;ゴールイン A/B screen mail
rankout_timer	EQU	1DF4H
rankout_process	EQU	1DF8H
goalstate	EQU	1DFCH	;ゴールインプロセスコントロール
;- - - - - - - - - - - - - - - 
_archX		EQU	0
_archY		EQU	2
_archZ		EQU	4
_archA		EQU	6
_archH		EQU	8
_archV		EQU	10
_archS		EQU	12		
;----------------------------------------------------------------------
result_control	EQU	1E00H
result_test	EQU	1E0EH
camera_value	EQU	1E10H
;- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
BGwrite_value	EQU	1E20H		;(DS 10H)
;- - - - - - - - - - - - - - - - -- - - - -
smorke_pose	EQU	1E3CH
smorke_work	EQU	1E3EH
smorke_r0	EQU	1E00H		;(1E40H - 1E5FH)
smorke_r1	EQU	1E20H		;(1E60H - 1E7FH)
;----------------------------------------------------------------------
trans_buffer	EQU	1E80H	;8byte(08H)
;
window_index	EQU	1E88H	;4byte
clear_flag	EQU	1E8CH	;2byte
;- - - - - - - - - - - - - - - - - - - - - - -
system_no	EQU	1E90H
ptn_flip	EQU	1E92H	;4byte
erase_kart	EQU	1E96H	;4byteカートを消去するＦＬＡＧ
Vpose_counter	EQU	1E9AH		
;		EQU	1E9EH
;- - - - - - - - - - - - - - - - - - - - - - -
doppler_index	equ	1ea0h
doppler_dist	equ	1ea4h
doppler_x	equ	1ea8h
doppler_y	equ	1each
;----------------------------------------------------------------------
gameover_status	equ	1eb0h	; 4byte  ゲームオーバ時のステータス
;- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
question_flag	equ	1EB4H
question_pointer equ	1EB6H
;- - - - - - - - - - - - - - - - - - - - - - -

doppler_switch	equ	1eb8h	;(2)
doppler_process	equ	1ebah	;(4) 
;
;XXX		equ	1ebeh	
;----------------------------------------------------------------------
;;;		EQU	1EBEH		; anime attr (smorke)
ring_past	EQU	1EC0H
ring_side	EQU	1EC2H
battle_flag	EQU	1EC4H		; 2byte (ON FFFF/OFF 0000)
ring_program	EQU	1EC6H
ring_counter	EQU	1EC8H
ring_element	EQU	1ECAH
ring_offset_X	EQU	1ECCH
ring_offset_Y	EQU	1ECEH
;----------------------------------------------------------------------
message_flag	EQU	1ED0H
message_timer	EQU	1ED4H
message_point	EQU	1ED8H
;;;		EQU	1EDEH		; anime attr (smorke)
;----------------------------------------------------------------------
watch_flagA	EQU	1EE0H		; 2byte
watch_flagB	EQU	1EE2H		; 2byte
frame_part	EQU	1EE4H		; 2byte	
frame_3_repeat	EQU	1EE6H		; 2byte
spin_attribute	EQU	1EE8H
;----------------------------------------------------------------------
backup_A	EQU	1EF0H		; OBJ backup
backup_B	EQU	1EF2H		;
state_control	EQU	1EF4H		;
nmi_vector	EQU	1EF6H		;
obj_count_A	EQU	1EF8H		; OBJ display count
obj_count_B	EQU	1EFAH		;
obj_limit	EQU	1EFCH		; OBJ limiter
oam_vector	EQU	1EFEH		; oam vector
;************************************************************************
;	リセットバックアップワークエリア
;************************************************************************
Debug_value	EQU	1F00H		; 10byte (reset-backup)
static_work	EQU	1F10H		; 記憶用ワーク
;		EQU	1F12H		; 
hit_distance	EQU	1F14H		; 敵との当たり距離 
;		EQU	1F16H		; 
;		EQU	1F18H		; 
;		EQU	1F1AH		; 
;- - - - - - - - - - - - - - - - - - - - - - - - -
record_mode	equ	1f20h		; テストセーブロード
special_command	equ	1f22h		; 裏コマンドバックアップ
replay_flag	equ	1f24h		; リプレイフラグ
;- - - - - - - - - - - - - - - - - - - - - - - - -
random		EQU	1F26H		; 2byte
nmi_work	EQU	1F28H		; 2byte
ghost_flag	EQU	1F2AH		; ゴーストフラグ
;- - - - - - - - - - - - - - - - - - - - - - - - -
;		EQU	1F2FH
;- - - - - - - - - - - - - - - - - - - - - - - - -
;;;	 1F30H - 1F3FH			; start RAM check



;#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#
;#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#
;
;
;************************************************************************
;		BIT FORMAT 	<_flag,X	(10)
;************************************************************************
;			fedcba9876543210
area_out	EQU	0000000000000001B	; 1 ... 画面外
ON_comp		EQU	0010000000000000B	; 1 ... コンピュータカート
STOP_item	EQU	0000100000000000B	; 1 ... アイテム使用禁止
ON_goal		EQU	0000000000100000B	; 1 ... ゴール中
TG_goal		EQU	0000000000010000B	; 1 ... ゴールイン(トリガ)
STOP_engine	EQU	0000000001000000B	; 1 ... エンジンストップ

;************************************************************************
;		BIT FORMAT 	<kart_status,X	(e2)
;************************************************************************
;			fedcba9876543210
ON_kubifuri	EQU	0000010000000000B	; 1 ... 首振り(トリガ)
SIDE_spin	EQU	0000000100000000B	; 
ON_drift	EQU	0000000000100000B	; 1 ... ドリフト
ON_sea		EQU	0000000000010000B	; 1 ... 水しぶき
ON_spin		EQU	0000000000001000B	; 1 ... オイルスピン
OIL_spin	EQU	0000100000000000B	; 1 ... オイルスピン	
BANANA_spin	EQU	0001000000000000B	; 1 ... バナナスピン

ON_chibi	EQU	0100000000000000B	; 1 ... チビ

spin_left	EQU	0000001000000000B
spin_right	EQU	0000001100000000B
spin_power	EQU	1000H

;************************************************************************
;		BIT FORMAT 	<kart_register,X	()
;************************************************************************
;			fedcba9876543210
;;ON_kickslot	EQU	0000000000000001B

;************************************************************************
;		BIT FORMAT 	<_effect_flag,X		()
;************************************************************************
;			fedcba9876543210
effect_spin	equ	0000000000000001B	; スピン (バトル）
effect_spin_c	equ	0000000000000010B	;    // （コインを落とす）
effect_crash	equ	0000000000000100B	; カート衝突トリガ
effect_dosun	equ	0000000000001000B	; ドスン衝突トリガ
effect_spinSE	equ	1000000000000000B	; スピンサウンド
effect_mycrash	equ	0100000000000000B	; カート同士の衝突 flag
effect_fire	equ	0010000000000000B	; マグマにおちたとき

;************************************************************************
;		BIT FORMAT 	<_status,X		()
;************************************************************************
;			fedcba9876543210
ON_jyama	equ	1000000000000000B
ON_poo		equ	0000100000000000B
;
;************************************************************************
;		BIT FORMAT 	!result_status		()
;************************************************************************
;			fedcba9876543210
STOP_pause	equ	1000000000000000B	; ポーズの絶対禁止






;************************************************************************
;;		maptype
;************************************************************************

ice_type	equ	08h

;----------------------------------------------------------------------
;
;#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#
;#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#

;************************************************************************
;;		BANK chenge	( PEA )		
;************************************************************************

BC_01_70	equ	8130h	; bank XX -> bank 30 -> bank 01
BC_01_7F	equ	817fh	; bank XX -> bank 7f -> bank 01
;- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - --
BC_00_7E	equ	807eh	; bank XX -> bank 7e -> bank 00
BC_00_7F	equ	807fh	; bank XX -> bank 7f -> bank 00
BC_00_01	equ	8081h	; bank XX -> bank 01 -> bank 00
BC_00_05	equ	8085h	; bank XX -> bank 05 -> bank 00
;- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - --
BC_7F_00	equ	7f80h	; bank XX -> bank 00 -> bank 7f
;- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - --
BC_01_01	equ	8181h	; phb -> bank 01 -> plb
BC_7F_7F	equ	7f7fh	; phb -> bank 7F -> plb
BC_70_00	equ	3080h	; phb -> bank 00 -> bank 30 -> plb
BC_70_70	equ	3030h	; phb -> dmmy    -> bank 30 -> plb
;- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - --
dbank_00	equ	80h
dbank_00000	equ	dbank_00*10000h
dbank_01	equ	81h
dbank_10000	equ	dbank_01*10000h
dbank_08	equ	84h
dbank_80000	equ	dbank_08*10000h

dbank_850000	equ	850000h
;- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
dbank_SRAM	equ	30h	; backup RAM
dbank_7f	equ	7fh	; main RAM
;- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -



;************************************************************************
;		EX_RAM  alocation
;************************************************************************
BGstatus_buffer	EQU	0B00H		; (100H)
BGcheck_buffer	EQU	7F0000H		; (4000H) スクリーン展開領域
CGX_buffer	EQU	7f4000h		; (4000H) キャラクター展開領域
MOJI_buffer	EQU	7FA000H		; (1?00H) 常駐ＯＢＪキャラクタ
;-----------------------------------------------------------------------
;
;
;-----------------------------------------------------------------------
OAM_databuffer	EQU	7e2000h		; ＯＡＭデータのバッファ
;- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
CGX_test	equ	7fd800h		; ISPK 展開領域
					; ( おばけ MODE1BG 用のバッファ )
;- - - - - - - - - - - - - - - - - 
round_buffer	equ	7fd800h		;(400h) ラウンド表示バッファ
;- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
over_work 	equ	7fdc00h		; ゲームオーバー／ランクアウト
					; 用ワーク
;		equ	7fdd00h
kabe_buffer	equ	7fde00h		; カベ かきかえ座標バッファ
kabe_SP		equ	7fde30h		; カベ かきかえ用 スタックポインタ
kabe_counter	equ	7fde32h		; 		
;- - - -
mykart_shadow1	equ	7fdf00h		; マイカーの影 ( 1p )
mykart_shadow2	equ	7fdf10h		; マイカーの影 ( 2p )

mykart_shadow1s	equ	7fdf20h		; マイカーのチビ影 ( 1p )
mykart_shadow2s	equ	7fdf30h		; マイカーのチビ影 ( 2p )

;- - - -
Question_buffer	equ	7fdf80h		; ？マーク座標バッファ ( BT )
;- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
moji_value	equ	7fe000h		; ゴールイン後の laptime表示 バッファ
window_buffer	equ	7fe500h		; ウィンドウデータ展開
;- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
BGmove_buffer	equ	7ff000h		; ＢＧのキャラ替え用バッファ
demoobj_work	equ	7ffc00h 	; コインデモ用 ＯＢＪＷＯＲＫ
					; ( 200h 16*2 )
clear_screen_A	equ	7ffe00h 	; メータ表示クリアスクリーン
clear_screen_B	equ	7ffe80h		;	//
record_work	equ	7fff00h		; レコード用ワーク
reclap_switch	equ	record_work
;- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -


;************************************************************************
;		S_RAM  alocation
;************************************************************************
;
;- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
;;; key_buffer	equ	7f6000h		;キーを覚えておくバッファ
;- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
;keycode_sum	equ	7f6002h		;(2) - - - - - - 
keycode_start	equ	7f6000h
keycode_camera	equ	7f6004h		;(2) カメラモード
keycode_s_code	equ	7f6006h		;(2) セーブコード
keycode_random	equ	7f6008h		;(2) 乱数
keycode_laptime	equ	7f600ah		;(3) ラップタイム
keycode_kart	equ	7f600dh		;(1) カート種類
keycode_world	equ	7f600eh		;(1) ワールド number
keycode_map	equ	7f600fh		;(1) マップ number
keycode_name	equ	7f6010h		;(8) 
keycode_buffer	equ	7f6018h		;(5e8h)
;- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
keySRAM_start	equ	306000h
keySRAM_sum	equ	306002h
keySRAM_camera	equ	306004h
keySRAM_s_code	equ	306006h		;(2) セーブコード
keySRAM_random	equ	306008h		;(2) 乱数
keySRAM_laptime	equ	30600ah		;(3) ラップタイム
keySRAM_kart	equ	30600dh		;(1) カート種類
keySRAM_world	equ	30600eh		;(1) ワールド number
keySRAM_map	equ	30600fh		;(1) マップ number
keySRAM_name	equ	306010h		;(8) 
keySRAM_buffer	equ	306018h		;(5e8h)
;- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Backup_RAM	equ	306000h		; バックアップ RAM 
;SRAM_start	equ	Backup_RAM
SRAM_race	equ	Backup_RAM+7f2h	; コースクリアバックアップ
;- - - - - - - - - - - - - - - - - - - - - - - debug - - - -

BGunit_buffer	equ	307000h		; S-RAM version
;- - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
;************************************************************************
;		ROM alocation
;************************************************************************

ROM_oamdata	equ	085ee00h
polenet_ROM	equ	085c800h	; 4M ROM version
ROM_posdata	equ	polenet_ROM
BGunit_ROM	equ	085d000h	; 4M ROM version

ROM_window	equ	085e770h

;----------------------------------------------------------------------
JAP_VER		equ	0
ENG_VER		equ	1
;----------------------------------------------------------------------
		LIST

