the cutting room mirror

ystool.hex

This article has a talk page!
view on tcrf.net

This is a sub-page of Proto:Super Mario World 2: Yoshi's Island.

This version of the editor, the oldest, is found in the SFC\ソースデータ\ヨッシーアイランド\ツール\tool\old_cos ("old course") directory, specifically in the sfc folder. old_cos includes various files pertaining to it, which, together with the ROM, provide a snapshot of the game's development in late 1993, approximately 1.5 years before its June 1995 release.

Editor

Overview#

No header fix is required to boot this level editor. an emulator with SFX-DOS support is required, such as this branch of bsnes-plus. The mouse should be configured to be in Controller Slot 2.

Upon boot, there are two choices: ENMY DATA SET and BG EDIT. The first allows for placement of enemies on the map, and the second choice allows for editing of map tiles.

No one has figured out how to fully utilize the editor yet, as the instructions in the README below suggest that the keyboard's function buttons need to be used in order to load .DAT files, and BSNES Plus doesn't appear to respond to function button input. A possible solution would be to remap the function buttons to other keys by editing the ROM.

Main Menu

ENMY DATA SET

BG EDIT

Instructions#

A set of instructions for using the editor can be found in ツール\tool\old_cos\doc\nii.doc, which is named for programmer Masaru Nii.

Japanese

English

l. 1 f5キーを押す

2 デリートしたいファイルの番号をキーボードの数字キーで入力。           

   なお、ファイル名一覧は、上下カーソルキーで上下にスクロールする

3 f10キーを押し、デリートを実行

4 f5キーを押して、通常の処理に戻る

<画面使用状況一覧での手順>

1 f6キーを押す

2 現在使用されている画面が、全体図の中で青く反転して表示される

3 次に作業したい画面を全体図から矢印カーソルで選び、マウスの右ボタンを押して決定す

   る。選択された画面は、全体図の中で白くフラッシングする

4 f6キーを押して、通常の処理に戻る

<各種パラメータの設定の手順>

1 f7キーを押す

2 フラッシングしている文字を、変更したいパラメータの位置に、上下カーソルで合わせる

3 パラメータを十六進で入力する。入力は数字キーの0~9および文字キーのA~Fで行な

   う。なお、入力したい数値が一桁であるとき、10の位に0を入力しなければ、1の位を
   入力することができない

4 f7キーを押して、通常の処理に戻る

Note that "Variable Units" are called "Objects" by western Yoshi's Island modders and documenters, while "Fixed Units" are referred to as "Extended Objects".

Development Snapshot

Comparing the assets of this prototype with files that have accurate last-modified dates, it appears that it dates from late 1993.

Entities#

  • The entities DOROB (the bandit) and BUGGY (an unused four-wheeled buggy) are present in the ROM in the form of code, but they don't have graphics assigned to them. This means that ystool.hex is older than the earliest version of the file that assigns graphics to entities, SFC\ソースデータ\ヨッシーアイランド\日本_Ver0\sfc\back_up\ys_ench.asm.BAK0, as the file does have graphical assignments for these entities.

Meter#

Prototype

Final

Yoshi's_Island_Proto-ystool_Meter.png

The meter, which appears on the pause screen in the final game, originally contained a hunger gauge. Code related to this meter can still be found in the source by searching for text such as "はらぺこメーター" (Hunger Meter), "eat power", and "eat counter", and the labels MEATPW and MEATCT. The meter was converted to a charging meter indicating how far an egg would be tossed in a later prototype, and removed from the final game entirely.

Icons for all of Yoshi's possible transformations are also present, including the forms of Mini Yoshi and Mushroom Yoshi, which are also absent from the released version.

In the final game, the windows on the meter are for items.

The level countdown timer was also removed, but code that may be associated with it can be found by searching for the labels TIMER and TIMEUP.

Palettes#

The common sprite palettes look like this in ystool.

Prototype

Final

Yoshi's_Island_Proto-ystool_Common_Sprite_Palettes.png

Palettes: BG1#

Label

Comment

Translation

BG1COLBK

BG1 Colour Bank

BG1_SUB_7_COL

;[0:地下]

Underground

BG1_SUB_1_COL

;[1:草]

Grass

BG1_SUB_2_COL

;[2:水中]

Underwater

BG1_SUB_3_COL

;[3:溶岩]

Lava

BG1_SUB_6_COL

;[4:雪]

Snow

BG1_SUB_5_COL

;[5:バブル]

Bubble

BG1_SUB_0_COL

;[6:カベ]

Wall

Palettes: BG2#

Label

Comment

Translation

BG2COLBK

BG2 Colour Bank

BG2_SUB_7_COL

;[0:地下]

Underground

BG2_SUB_4_COL

;[1:草]

Grass

BG2_SUB_1_COL

;[2:水中]

Underwater

BG2_SUB_0_COL

;[3:溶岩]

Lava

BG2_SUB_3_COL

;[4:雪]

Snow

BG2_SUB_3_COL

;[5:バブル]

Bubble

BG2_SUB_6_COL

;[6:カベ]

Wall

BG2_SUB_5_COL

;[7:パステル2]

Pastel 2

Palettes: BG3#

Label

Comment

Translation

BG3COLBK

BG3 Colour Bank

BG3_SUB_0_COL

;[0:雪山]

Snowy Mountain

BG3_SUB_1_COL

;[1:草トンネルマスク]

Grass Tunnel Mask

BG3_SUB_2_COL

;[2:水中]

Underwater

BG3_SUB_3_COL

;[3:スライム]

Slime

BG3_SUB_4_COL

;[4:カベ]

Wall

BG3_SUB_5_COL

;[5:バブル泡]

Bubble Foam

BG3_SUB_6_COL

;[6]

BG3_SUB_7_COL

;[7]

BG3_SUB_8_COL

;[8]

BG3_SUB_9_COL

;[9]

BG3_SUB_A_COL

;[A]

BG3_SUB_B_COL

;[B]

BG3_SUB_C_COL

;[C]

BG3_SUB_D_COL

;[D]

BG3_SUB_E_COL

;[E]

BG3_SUB_F_COL

;[F]

Palettes: OBJ#

Label

Comment

Translation

OBJCOLBK

Object Colour Bank

OBJ_SUB_1_COL

;[0:地下]

Underground

OBJ_SUB_1_COL

;[1:草]

Grass

OBJ_SUB_2_COL

;[2:水中]

Underwater

OBJ_SUB_3_COL

;[3:溶岩]

Lava

OBJ_SUB_6_COL

;[4:雪]

Snow

OBJ_SUB_6_COL

;[5:バブル]

Bubble

OBJ_SUB_0_COL

;[6:カベ]

Wall

OBJ_SUB_1_COL

;[7:パステル2]

Pastel 2

Tilesets#

ツール\tool\old_cos\sfc\ys_init.asm assigns graphical banks to the tilesets that existed at this time.

The following graphical banks, despite existing, are empty:

BG1

BG2

BG3

OBJ

CHR05
CHR0B
CHR0E
CHR0F
CHR31
CHR32
CHR33
CHR38
CHR39
CHR3A
CHR3B
CHR1D
CHR25A
CHR25B
CHR26A
CHR42
CHR44
CHR48
CHR4C
CHR4D
CHR4E
CHR4F

Tileset: BG1#

Japanese

Translation

BG1CHRBK    EQU $
;            [0]   [1]   [2]
        BYTE    CHR00,CHR01,CHR30  ;[0:地下]
        BYTE    CHR02,CHR03,CHR31  ;[1:草]
        BYTE    CHR08,CHR09,CHR09  ;[2:水中]
        BYTE    CHR0A,CHR0B,CHR0B  ;[3:溶岩]
        BYTE    CHR04,CHR05,CHR32  ;[4:雪]
        BYTE    CHR06,CHR07,CHR07  ;[5:バブル]
        BYTE    CHR0C,CHR0D,CHR31  ;[6:カベ]
BG1 Character Bank

Underground
Grass
Underwater
Lava
Snow
Bubble
Wall

Character Bank 3C:

Yoshi's_Island_Proto-ystool_hex_Bank_3C.png

Tileset: BG2#

Japanese

Translation

BG2CHRBK    EQU $
;            [0]   [1]
        BYTE    CHR1E,CHR1F    ;[0:地下]
        BYTE    CHR18,CHR19    ;[1:草]
        BYTE    CHR12,CHR13    ;[2:水中]
        BYTE    CHR10,CHR11    ;[3:溶岩]
        BYTE    CHR10,CHR11    ;[4:雪]
        BYTE    CHR14,CHR15    ;[5:バブル]
        BYTE    CHR1C,CHR1D    ;[6:カベ]
        BYTE    CHR1A,CHR1B    ;[7:パステル2]
BG2 Character Bank

Underground
Grass
Underwater
Lava
Snow
Bubble
Wall
Pastel 2

Tileset: BG3#

Japanese

Translation

BG3CHRBK    EQU $
;            [0]    [1]
        BYTE    CHR20A,CHR20B      ;[0:雪山]
        BYTE    CHR22A,CHR21A      ;[1:水中(部分スクロール)]
        BYTE    CHR22A,CHR22B      ;[2:BG3敵(カベ、オバケetc)]
        BYTE    CHR23A,CHR22B      ;[3:パステル]
        BYTE    CHR23A,CHR22B      ;[4:   ”   2]
        BYTE    CHR24A,CHR24A      ;[5:BG3敵(横回転ポリゴン)]
        BYTE    CHR22A,CHR22B      ;[6:   ”   (ボルト)]
        BYTE    CHR22A,CHR22B      ;[7:竜巻]
        BYTE    CHR22A,CHR22B      ;[8:砂嵐]
BG3 Character Bank

Snowy Mountain
Underwater (Partial Scroll)
BG3 Enemies (Walls, Ghosts, Etc.)
Pastel
  "    2
BG3 Enemies (Horizontal Rotating Polygons)
  "         (Bolt)
Whirlwind
Sandstorm

Tileset: OBJ#

Japanese

Translation

OBJCHRBK    EQU $
;            [0]   [1]
        BYTE    CHR42,CHR43    ;[0:地下]
        BYTE    CHR40,CHR4B    ;[1:草]
        BYTE    CHR40,CHR49    ;[2:水中]
        BYTE    CHR4A,CHR4B    ;[3:溶岩]
        BYTE    CHR40,CHR45    ;[4:雪]
        BYTE    CHR46,CHR47    ;[5:バブル]
        BYTE    CHR4A,CHR4B    ;[6:カベ]
        BYTE    CHR40,CHR4B    ;[7:パステル2]
Object Character Bank

Underground
Grass
Underwater
Lava
Snow
Bubble
Wall
Pastel 2

Character Bank 40:

Yoshi's_Island_Proto-ystool_hex_Bank_40.png

Character Bank 50:

Yoshi's_Island_Proto-ystool_hex_Bank_50.png

Character Bank 51:

Yoshi's_Island_Proto-ystool_hex_Bank_51.png

Tileset: SuperFX#

Offset 0x70000:

Yoshi's_Island_Proto-ystool_hex_SuperFX_OBJ.png