|
|
This page contains no introduction. |
Developer Credit#
A small dev credit string can be seen at 0x3E in 049-m1.m1.
Ver 2.0a by MAKOTO.03/04/05 to SK
(Source: Original TCRF research)
Source Code Fragment#
|
|
'...But what does it mean?' |
|
|
To do: |
An insane amount of code can be found at 0xFEF0 in 049-m1.m1. This is only mildly restored for a handful of instructions that were cut off.
andi.w #$1f,d0
add.w d0,d0
_push d2
move.l a4,d2
andi.l #$ffffffc0,d2
add.w d0,d2
movea.l d2,a4
_pop d2
move.w #GAMY/2+1-1,d2
scr_t1:
_push d1-d2/a0
jsr block_put00 ; <- d1,a0
_pop d1-d2/a0
addq.w #4,d1
move.w SCR_WX(a5),d0
lea.l (a0,d0.w),a0
lea.l $40*2(a4),a4
move.w d1,d0
andi.w #$3f,d0
bne scr_t10
subi.w #$40,d1
move.l a4,d0
andi.l #$3f,d0
addi.l #ATRI_WORK,d0
movea.l d0,a4
scr_t10:
dbra d2,scr_t1
rts
;------------------------------------------------------------------------------
; ( Y ) put
;------------------------------------------------------------------------------
scr_dput:
tst.w scr_stop
bne scr_d5
tst.b SCR_PUT(a5) ; screen_put
bne scr_d3
tst.w d7
beq scr_d3
bmi scr_uput
move.w HIY(a5),d0 ; screen max
andi.w #$1f,d0
bne scr_d3
moveq.l #0,d0
move.w #GAMY/2,d1
bra za_puty
scr_uput:
move.w HIY(a5),d0 ; screen max
andi.w #$1f,d0
bne scr_d3
moveq.l #0,d0
moveq.l #-1,d1
bra za_puty
scr_d5:
move.w #1,scr_stop
moveq.l #0,d7
scr_d3:
rts
;------------------------------------------------------------------------------
; ( Y ) scrol
;------------------------------------------------------------------------------
scr_down:
tst.w scr_stop
bne scr_d5
tst.w d7
beq scr_d3
bmi scr_up
_dec.w d7 ; screen_count
_inc.w HIY(a5)
_dec.w VCY(a5)
move.w HIY(a5),d0
andi.w #$1f,d0
bne scr_d3
addi.w #2,SCY(a5)
cmpi.w #32,SCY(a5)
bcs scr_d3
move.w #0,SCY(a5)
move.w #0,VCY(a5)
rts
scr_up:
move.w HIY(a5),d0 ; screen_count
andi.w #$1f,d0
bne scr_u2
subi.w #2,SCY(a5)
bpl scr_u2
move.w #30,SCY(a5)
move.w #0,VCY(a5)
scr_u2:
_inc.w d7
_dec.w HIY(a5)
_inc.w VCY(a5)
rts
;------------------------------------------------------------------------------
; za_puty : 横方向、書き換え
;
; input parameter
; d0.w ... block_x
; d1.w ... block_y
;------------------------------------------------------------------------------
za_puty:
_push.w d1 ; plas or minas
move.w d0,d3
move.w d1,d4
jsr map_zahyo
move.w SCR_NO(a5),d1
add.w d3,d3
add.w SCX(a5),d3
bpl za_py2
* addi.w #22,d3
* bra za_py1
za_py2:
cmpi.w #22,d3
bcs za_py1
subi.w #22,d3
za_py1:
add.w d3,d1
lsl.w #6,d1 ; *32*2
add.w d4,d4
add.w SCY(a5),d4
andi.w #$1f,d4
add.w d4,d4
add.w d4,d1
_pop.w d2
move.w #14,d0
tst.w d2
bpl scr_y
move.w #-1,d0
scr_y: ; 横方向、表示
_push.w d0
move.w SCR_NO(a5),d2
lsl.w #5+1,d2 ; *32*2
add.w d4,d2
movea.l peas_data,a2
movea.l atri_data,a6
jsr aadrs_set
_pop.w d0
_push d2
move.b base_hix,work_hix
move.b base_hiy,d2
ext.w d2
add.w d2,d0
andi.w #$1f,d0
lsl.w #5+1,d0
move.l a4,d2
andi.l #$3f,d2
addi.l #ATRI_WORK,d2
movea.l d2,a4
lea.l (a4,d0.w),a4
_pop d2
move.w #GAMX/2+1-1,d4
scr_y1:
_push d1-d4/a0-a1
jsr block_put ; <- d1,a0
_pop d1-d4/a0-a1
addi.w #$40*2,d1
lea.l 2(a0),a0
* move.w SCR_NO(a5),d0 ;
move.w d2,d0
addi.w #$40*22,d0
cmp.w d0,d1
bcs scr_y3
subi.w #$40*22,d1
scr_y3:
lea.l 2*2(a4),a4
move.l a4,d0
andi.w #$3f,d0
bne scr_40r
suba.l #32*2,a4
scr_40r:
dbra d4,scr_y1
rts
;------------------------------------------------------------------------------
; aadrs_set : アタリ VRAM address set
;
; input parameter
; a5 ... scrol work adrs
;------------------------------------------------------------------------------
aadrs_set:
lea.l ATRI_WORK,a4
cmpa.l #scr1_work,a5
bne aads_pass
move.w HIX(a5),d0
lsr.w #4,d0
andi.w #$1f,d0
move.b d0,base_hix
add.w d0,d0
lea.l (a4,d0.w),a4
move.w HIY(a5),d0
lsr.w #4,d0
andi.w #$1f,d0
move.b d0,base_hiy
lsl.w #5+1,d0
lea.l (a4,d0.w),a4
move.l a4,atri_pos
aads_pass:
rts
;------------------------------------------------------------------------------
; map_zahyo : マップ座標算出
;
; input parameter
; d0 ... block_x
; d1 ... block_y
; output parameter
; a0 ... 座標 address
;------------------------------------------------------------------------------
map_zahyo:
movea.l SCR_ADR(a5),a0
move.w HIY(a5),d2
lsr.w #5,d2 ; /32
add.w d2,d1
mulu SCR_WX(a5),d1
move.w HIX(a5),d2
lsr.w #5,d2 ; /32
add.w d2,d0
lsl.w #1,d0
andi.l #$0ffff,d0
add.l d1,d0
lea.l (a0,d0.l),a0
rts
;------------------------------------------------------------------------------
; block_put : ブロック・ヒョウジ (32*32dot)
;
; input parameter
; d1.w ... vram address
; a0 ... キャラ&カラー・data
; a2 ... キャラクタ&カラー・data_base
; a5 ... screen work
;------------------------------------------------------------------------------
block_put00:
lea.l LSP_WRR,a1 ; ライト・データ・reg
move.w #1,LSP_AIR ; auto・1・inc
move.w (a0)+,d2
andi.l #$ffff,d2
lsl.l #4,d2
lea.l (a2,d2.l),a3
move.w d1,d2
move.w d2,LSP_ADR ; [16クロック]
cmpa.l #scr1_work,a5 ; screen 1 init
beq block_put200
move.w (a3)+,(a1) ; キャラクター [12クロック]
move.w (a3)+,(a1) ; カラー [12クロック]
move.w (a3)+,(a1) ; キャラクター [12クロック]
move.w (a3)+,(a1) ; カラー [12クロック]
addi.w #32*2,d2
move.w d2,LSP_ADR ; [16クロック]
nop
move.w (a3)+,(a1) ; キャラクター [12クロック]
move.w (a3)+,(a1) ; カラー [12クロック]
move.w (a3)+,(a1) ; キャラクター [12クロック]
move.w (a3)+,(a1) ; カラー [12クロック]
rts
block_put200:
jsr bput00
move.w d0,(a4)
jsr bput00
move.w d0,32*2(a4)
addi.w #32*2,d2
move.w d2,LSP_ADR ; [16クロック]
nop
jsr bput00
move.w d0,2(a4)
jsr bput00
move.w d0,32*2+2(a4)
rts
bput00:
move.w (a3)+,(a1) ; キャラクター [12クロック]
move.w (a3)+,d0 ; カラー [12クロック]
ori.w #$8000,d0
move.w d0,(a1)
clr.w d0
rts
*----------------------------------------------------------------
*----------------------------------------------------------------
*----------------------------------------------------------------
block_put:
lea.l LSP_WRR,a1 ; ライト・データ・reg
move.w #1,LSP_AIR ; auto・1・inc
move.w (a0)+,d2
andi.l #$ffff,d2
lsl.l #4,d2
lea.l (a2,d2.l),a3
move.w d1,d2
move.w d2,LSP_ADR ; [16クロック]
cmpa.l #scr1_work,a5 ; screen 1 init
beq block_put2
move.w (a3)+,(a1) ; キャラクター [12クロック]
move.w (a3)+,(a1) ; カラー [12クロック]
move.w (a3)+,(a1) ; キャラクター [12クロック]
move.w (a3)+,(a1) ; カラー [12クロック]
addi.w #32*2,d2
move.w d2,LSP_ADR ; [16クロック]
nop
move.w (a3)+,(a1) ; キャラクター [12クロック]
move.w (a3)+,(a1) ; カラー [12クロック]
move.w (a3)+,(a1) ; キャラクター [12クロック]
move.w (a3)+,(a1) ; カラー [12クロック]
rts
block_put2:
jsr bput
move.w d0,(a4)
jsr bput
move.w d0,32*2(a4)
addi.w #32*2,d2
move.w d2,LSP_ADR ; [�X %02X
extern kuwa3_data ; ミギナナメウエ
extern kuwa4_data ; ミギナナメシタ
extern zaurus1_data ; ザウルス1(fireヲ ウチ ツッコム)a
extern zaurus2_data ; ザウルス2(フユウ fire)a
extern mushi_data ; イモムシ
extern tobi_data ; トビムシ
extern howan1_data ; ホワン
extern zim_data ; wave ウエシタ(ミギヘ)
extern zim2_data ; wave シタウエ
extern zim3_data ; wave ウエシタ(ヒダリヘ)
extern zim4_data ; wave シタウエ
extern kurage_data ; クラゲ
extern nikuman_data ; ニクニク
extern howan2_data ; ホワン2
extern howan3_data ; ホワン3
extern hati1_data ; ハチ ヒダリ ヘ
extern hati2_data ; ハチ ミギ ヘ
;/////////////////////////////////////////////////////////////////////////////
; ' enemy.h ' end
;/////////////////////////////////////////////////////////////////////////////
extern titeiko_data ; 1st
extern titectl_data
extern iwa11_data
extern iwa12_check
extern kaminari_data
extern guard_shell_data
extern meka_tank_data
extern star_data ; 2st
extern star2_data
extern big_star_data
extern mid_star_data
extern mhasira_data ; 3st
extern mhasira2_data
extern door_data
extern elebeta_data
extern roll_crash_data
extern press_crash_data
extern niku_data ; 4st
extern nikuv_data
extern nik2_data
extern nik2v_data
extern nik3_data
extern nik3v_data
extern nict_data
extern nictv_data
extern nik4_data
extern nik4v_data
extern nik5_data
extern nik5v_data
extern nik6_data
extern nik6v_data
extern nik7_data
extern nik7v_data
extern nik8_data
extern nik8v_data
extern nik61_data
extern nik61v_data
extern nikx_data
extern nikxv_data
extern honda_beat_data
extern hiper_brain_data
extern ccgg_data
extern killer_meteo_data ; 5st
extern kure_b_data ; 6st
extern kure_s_data
extern ana_data
extern yousai_data
extern airfun_data
extern star6_data
extern flying_city_data ; 7st
extern scrct_data
extern st8pal_data ; 8st
extern star8_data
extern kaku_unit_data
extern bee_tank_data
*-------< h_zako.asm >-------------------------------------------------------
extern open3_data ; レーザー open
extern enbt4_data
extern spib3_data
extern spib4_data
extern spic3_data
extern spic4_data
extern enct1_data ; カクダイ カエル
extern enct2_data ; ヒダリ カクダイ ミギ モドル
extern rola1_data ; ホノボノ ヤロウ
extern enat1_data ; チドリアシ
extern datk1_data ; ミサイル ダッコ
extern spia1_data ; ウエーブ・タマ・ウエーブ 4キ ヘンタイ
extern spic6_data ; カイテン move 4キ ヘンタイ
extern ship1_data ; オオガタ セントウキ 2キ
extern vbas1_data ; ミサイル ハッシャダイ シタ
extern vbas2_data ; ミサイル ハッシャダイ ウエ
extern spia2_data ; ウエカラユーターン ミギニススム
extern spia3_data ; シタカラユーターン ミギリニススム
extern spia4_data ; ウエカラユーターン ヒダリニススム
extern spia5_data ; シタカラユーターン ヒダリニススム
extern enbt6_data ; セマッテキテ シタニカエル
extern toci1_data ; トーチカ
extern teis1_data ; teisatu ボディ ウエ
extern jump1_data ; ジャンプヤロウ
extern zbas1_data ; ヒダリ カラ ミギヘ モドル ( シタ )
extern zbas2_data ; ヒダリ カラ ミギヘ モドル ( ウエ )
extern zbas3_data ; ジャンプヤロウ オトス ( ウエ )
extern zbas4_data ; マワル ( シタ )
extern spib5_data ; サークル・ufo
extern npen1_data ; ノビルペン シタ
extern npen6_data ; ノビルペン ウエ
extern moza1_data ; モザイク
extern hant2_data ; ドアトビダシ
extern mete1_data ; チュウボス メテオ
extern enat2_data ; サンキヨッテキテ カエル
extern hira1_data ; ヒライテ タマウチ
extern suna1_data ; スナ1
extern suna2_data ; スナ2
extern suna3_data ; スナ3
extern suna4_data ; スナムシクン
extern shoue1_data ; 3メンホウダイミギ
extern shoue2_data ; 3メンホウダイヒダリ
extern hhou1_data ; エッチホウダイ
extern tuka1_data ; ジキツカミ
extern enat5_data ; エスノジmoveシタカラ
extern enat6_data ; エスノジmoveウエカラ
extern rolb1_data ; エルノジmoveマエウエカラ
extern rolb2_data ; エルノジmoveマエシタカラ
extern rolb3_data ; エルノジmoveウシロウエカラ
extern rolb4_data ; エルノジmoveウシロシタカラ
extern datk2_data ; ミサイルダッコ マッスグクル2
extern datk3_data ; ミサイルダッコ マッスグクル3
extern mekaeru1_data ; メカエルシタカラウエ
extern mekaeru7_data ; メカエル16*7
extern mekaeru8_data ; メカエル16*8
extern mekaeru10_data ; メカエル16*10
extern mekaeru11_data ; メカエル16*11
extern mekaeru12_data ; メカエル16*12
extern iwahou1_data ; イワバホウダイシタ
extern iwahou4_data ; イワバホウダイウエ
extern iwamisair1_data ; イワバチュウキャラ
extern bitkun1_data ; ビットクン
extern daioubos_data ; キョウフノダイオウ
extern daibit4_data ; トビビット2
extern dorisyat1_data ; ドリルシャッター16*4
extern dorisyat3_data ; ドリルシャッター16*7
extern dorisyat4_data ; ドリルシャッター16*8
extern syater1_data ; シャッター エスノジ シタ
extern syater4_data ; シャッター サーチツゥコミ シタ
extern syater5_data ; シャッター 16カイテンマッスグ
extern syater6_data ; シャッター サーチツゥコミ ウエ
extern syater7_data ; オキ シャッター シタ
extern syater8_data ; オキ シャッター ウエ
extern rold1_data ; マッスグヒダリウエ45ド
extern rold2_data ; マッスグヒダリシタ45ド
extern enat7_data ; エスノジヒダリウエ45ド
extern enat8_data ; エスノジヒダリシタ45ド
extern zakodai1_data ; ザコダイジャンプヤロウ
extern endt3_data ; サンキヘンタイカクダイ
extern endt4_data ; サンキヘンタイカクダイ
*-------< h_zako stage 4 >---------------------------------------------------
extern boto1_data ; ボトボトオチル
extern moko1_data ; ニクモコモコ
extern tanp1_data ; タンパク ムスコ1
extern tanp2_data ; タンパク ムスコ2
extern hana1_data ; ハナタカ1
extern hana2_data ; ハナタカ2
extern enft1_data ; オッカケ エイリアン
extern enft2_data ; オッカケ エイリアン2
*-------< h_zako stage 5 >---------------------------------------------------
extern ncbos1_data ; ニセチュウボス
extern dmet31_data ; オキダイメテオ キカイシタ
extern dmet41_data ; オキダイメテオ キカイウエ
extern mmet4_data ; コメテオ オキインセキ
extern dmet11_data ; ダイメテオ(1fシタ)
extern dmet21_data ; ダイメテオ(1fウエ)
extern ken1_data ; ケンセツチュウ1(1A)
extern ken2_data ; ケンセツチュウ2(1B)
extern ken3_data ; ケンセツチュウ3(1C)
extern mmet11_data ; コメテオ コウソク
extern mmet21_data ; コメテオ チュウソク
extern mmet31_data ; コメテオ テイソク
extern paip11_data ; パイプ1(21)
extern paip21_data ; パイプ2(1D)
extern paip31_data ; パイプ3(1E)
extern paip41_data ; パイプ4(20)
*-------< r_zako.asm >-------------------------------------------------------
* r_1
extern hufo_data ; 10キ ヘンタイ
extern hufo2_data ; シュクショウ リターン
extern time_up_data ; ムテキ ボウシ
extern mcanon_data ; ホウダイ
extern mcanon2_data ; ホウダイ (シタムキ)
extern en_at_data ; アメンボー
extern hugu_data ; ワープ・チョウチン
extern kirai_data ; キライ
extern kirai2_data ; クルットマワル
extern spin_ct_data ; ワープ・トッコウタイ
extern rol_canon_data ; 3ウエイ・センシャ
* r_2
extern teku_data ; テクテク
extern hebi_data ; ヘビ・キャラ
extern mame_data ; ミチヅレ・キャラ
extern bbase1_data ; スイコミレーザー・シタ
extern bbase2_data ; スイコミレーザー・ウエ
extern water_data ; ウォーター・ジャンプ
extern ran_data ; ランチャー・ロボ (マルダマ)
extern fcanon1_data ; フユウ・ホウダイ1
extern fcanon2_data ; タマ ヲ ウッテ uターン
extern mspin_data ; スピン・ツッコミ
* r_3
extern vten_data ; ツリ・テンジョウ 1 (3st)
extern nten_data ; ツリ・テンジョウ 2 (3st)
extern en2_at_data ; 90ヘンカン
extern bspin_data ; ビッグ・スピン(チョクシン)
extern bspin2_data ; ビッグ・スピン(サンカク1)
extern bspin3_data ; ビッグ・スピン(サンカク2)
extern machine_data ; カイテン・ビットマシン
extern dspin_data ; 3Dクルクル(ヒダリヘ)
extern dspin2_data ; 3Dクルクル(ウエヘ)
extern dspin3_data ; 3Dクルクル(シタヘ)
extern ahiko1_data ; ユラユラ・ヒコウ
extern ahiko2_data ; キュウコウカ
extern ahiko3_data ; キュウジョウショウ
extern bhiko1_data ; ツッコミ
extern bhiko2_data ; 4キ シタ ヘ オリテ サーチ
extern bhiko3_data ; 4キ ウエ ヘ オリテ サーチ
extern spin2_ct_data ; カソク シテ マッスグ ツッコミ
extern batt1_data ; 3キ デ ヒダリ ススミ シタ サーチ
extern batt2_data ; 3キ デ ミギ "
extern batt3_data ; ヒダリ ヘ クルットススム
extern batt4_data ; ミギ ヘ "
extern batt5_data ; ウエ ヘ "
extern batt6_data ; シタ ヘ "
extern driru1_data ; ドリル・ミサイル ( ウエ ヘ )
extern driru2_data ; ドリル・ミサイル ( シタ ヘ )
extern gspin_data ; カイテンホウシャ
extern vten2_data ; カベ
extern kirai3_data ; クロス・カイテン
extern datk4_data ; ミサイルダッコ(カクダイ)
*-------< r_zako stage4 >----------------------------------------------------
* r_4
extern sando1_data ; ハンバーグ (ヒダリヘ)
extern sando2_data ; ハンバーグ (ミギヘ)
extern kuwa1_data ; ヒダリナナメウエ
extern kuwa2_data ; ヒダリナナメシタ
exter
(Source: Original TCRF research)