Dragon Warrior II (NES)/TBL: Difference between revisions

From Data Crystal
Jump to navigation Jump to search
(Adding tables)
Line 420: Line 420:
*The 2nd table handles {{hex|11100 xxxxx}}, the 3rd {{hex|11101 xxxxx}}, the 4th {{hex|11110 xxxxx}}, the 5th {{hex|11111 xxxxx}}.
*The 2nd table handles {{hex|11100 xxxxx}}, the 3rd {{hex|11101 xxxxx}}, the 4th {{hex|11110 xxxxx}}, the 5th {{hex|11111 xxxxx}}.


<pre>
{{source|1=[https://www.romhacking.net/forum/index.php?topic=27053.msg364170#msg364170 Alchemic]}}
TBL for 0xB49B:
 
00-09 = 0-9
===Table for main script===
0A-23 = a-z
/00000=[end]
24-3D = A-Z
/00001=.[end]
3E-57 = a-z again
/00010=?[’ -66][FD][FD][end]
58=A
/00011=[.’][end]
59=(space)
00100=[FF]
5A=[SUN]
00101=y
5B=[STAR]
00110=c
5C=[MOON]
00111=o
5D=[DROP]
01000=d
5E=[HEART]
01001=e
5F=(space)
01010=f
60=(space)
01011=g
61='
01100=h
62="
01101=i
63=->
01110=j
64="
01111=
65='
10000=l
66='
10001=m
67='
10010=n
68=.'
10011=[line]
69=,
10100=[.’]
6A=-
10101=[ ‘]
6B=.
10110=r
6C=&
10111=s
6D=(space)
11000=t
6E=?
11001=u
6F=!
11010=a
70=;
11011=w
</pre>
11100=[switch to C0 table]
11101=[switch to C1 table]
11110=[switch to C2 table]
11111=[switch to C3 table]
1110000000=A
1110000001=B
1110000010=Ca
1110000011=D
1110000100=E
1110000101=F
1110000110=G
1110000111=H
1110001000=I
1110001001=J
1110001010=King
1110001011=L
1110001100=Moonbrooke
1110001101=N
1110001110=O
1110001111=[item]
1110010000=The
1110010001=Rhone
1110010010=S
1110010011=;
1110010100=U
1110010101=”
1110010110=Water Flying Cl
1110010111=C
1110011000=Y
1110011001=Z
1110011010=x
1110011011=Village
1110011100=z
1110011101=[F9]
1110011110=‟
1110011111=K
1110100000=v
1110100001=q
1110100010=[’ -66][wait][line]
1110100011=R
1110100100=.
1110100101=[FD][FD]
1110100110=P
1110100111=b
1110101000=T
1110101001=!
1110101010=[sun]
1110101011=[star]
1110101100=[moon]
1110101101=W
1110101110=k
1110101111=p
1110110000=?
1110110001=,
1110110010=[monster]
1110110011=....
1110110100=:
1110110101=[’ -67]
1110110110=-
1110110111=[’ -66]
1110111000=[spell]
1110111001=[letter]
1110111010=[no voice]
1110111011=[wait]
1110111100=M
1110111101=[name]
1110111110=[number]
1110111111=[FD]
1111000000=Thou hast
1111000001=hest
1111000010=Midenhall
1111000011=hou
1111000100= of
1111000101= is
1111000110= thou has
1111000111= and
1111001000=to th
1111001001= thee
1111001010=ast
1111001011= do
1111001100=hat
1111001101= shall
1111001110= was
1111001111=hou has
1111010000=d the
1111010001= has
1111010010=gon
1111010011=.[wait][line]
1111010100= have
1111010101=come to
1111010110=ing
1111010111= hast
1111011000=ost thou
1111011001=this
1111011010= of the
1111011011=Hargon
1111011100=in the
1111011101=thing
1111011110=he
1111011111= with
1111100000=reasure
1111100001=[ ]Hast
1111100010=Erdrick
1111100011=come
1111100100=ere is
1111100101=Welcome
1111100110=rince
1111100111= great
1111101000=arr
1111101001= for th
1111101010=piece[(s)] of gold
1111101011=[.’][wait][line]
1111101100=But
1111101101=here
1111101110=can
1111101111=ove
1111110000=hee
1111110001=not
1111110010=for
1111110011=one
1111110100= any
1111110101= to
1111110110=descendant
1111110111=Roge Fastfinger
1111111000=all
1111111001=thy
1111111010=[ ‘]W
1111111011=thank thee
1111111100= it
1111111101= tha
1111111110= thou
1111111111= the
{{note|The left-hand-side of each entry in this table is given in binary, not hexadecimal.}}
{{note|Since they do not appear anywhere in this dictionary, the letters Q, V, and X are unable to be used anywhere in Dragon Warrior II's main script.}}
 
===Table for end credits===
00=A
01=B
02=C
03=D
04=E
05=F
06=G
07=H
08=I
09=J
0A=K
0B=L
0C=M
0D=N
0E=O
0F=P
10=Q
11=R
12=S
13=T
14=U
15=V
16=W
17=X
18=Y
19=Z
1A=0
1B=1
1C=2
1D=3
1E=4
1F=5
20=6
21=7
22=8
23=9
24252627=[CHUN]
28=-
29=[right triangle]
2A=©
2B2C2D=[enix logo line 1]
2E2F3031=[enix logo line 2]
32333435=[enix logo line 3]
36373839=[enix logo line 4]
3A3B3C3D=[enix logo line 5]
5F=
6B=.
6C=&
6E=?
6F=!
FF00=[preceding line is green]
FF01=[preceding line is orange]
FF02=[preceding line is pink]
FF03=[preceding line is blue]
FFFF=[preceding line uses custom palette specified by next 16 bytes]


{{source|1=[https://www.romhacking.net/forum/index.php?topic=27053.msg364170#msg364170 Alchemic]}}
===Table for everything else===
00=0
01=1
02=2
03=3
04=4
05=5
06=6
07=7
08=8
09=9
0A=a
0B=b
0C=c
0D=d
0E=e
0F=f
10=g
11=h
12=i
13=j
14=k
15=l
16=m
17=n
18=o
19=p
1A=q
1B=r
1C=s
1D=t
1E=u
1F=v
20=w
21=x
22=y
23=z
24=A
25=B
26=C
27=D
28=E
29=F
2A=G
2B=H
2C=I
2D=J
2E=K
2F=L
30=M
31=N
32=O
33=P
34=Q
35=R
36=S
37=T
38=U
39=V
3A=W
3B=X
3C=Y
3D=Z
3E=a [alternate unused font]
3F=b [alternate unused font]
40=c [alternate unused font]
41=d [alternate unused font]
42=e [alternate unused font]
43=f [alternate unused font]
44=g [alternate unused font]
45=h [alternate unused font]
46=i [alternate unused font]
47=j [alternate unused font]
48=k [alternate unused font]
49=l [alternate unused font]
4A=m [alternate unused font]
4B=n [alternate unused font]
4C=o [alternate unused font]
4D=p [alternate unused font]
4E=q [alternate unused font]
4F=r [alternate unused font]
50=s [alternate unused font]
51=t [alternate unused font]
52=u [alternate unused font]
53=v [alternate unused font]
54=w [alternate unused font]
55=x [alternate unused font]
56=y [alternate unused font]
57=z [alternate unused font]
58=A [alternate unused font]
5A=[sun]
5B=[star]
5C=[moon]
5D=[water]
5E=[heart]
5F=
61=[ ‘]
62=”
63=[right arrow]
64=‟
65=[ ‘]
66=[’ -66]
67=[’ -67]
68=[.’]
69=,
6A=-
6B=.
6C=&
#6D=
6E=?
6F=!
70=;
71=[ ’]
72=[right triangle]
73=[down triangle]
74=:
75=..
F2=[(s)]
/FA=[end-FA]
/FC=[end-FC]
/FF=[end-FF]


{{Internal Data|game=Dragon Warrior II}}
{{Internal Data|game=Dragon Warrior II}}

Revision as of 02:42, 19 December 2018

Chip tiny.png The following article is a Text Table for Dragon Warrior II (NES).

Dragon Quest

00=0
01=1
02=2
03=3
04=4
05=5
06=6
07=7
08=8
09=9
0A=あ
0B=い
0C=う
0D=え
0E=お
0F=か

10=き
11=く
12=け
13=こ
14=さ
15=し
16=す
17=せ
18=そ
19=た
1A=ち
1B=つ
1C=て
1D=と
1E=な
1F=に

20=ぬ
21=ね
22=の
23=は
24=ひ
25=ふ
26=へ
27=ほ
28=ま
29=み
2A=む
2B=め
2C=も
2D=や
2E=ゆ
2F=よ

30=ら
31=り
32=る
33=れ
34=ろ
35=わ
36=を
37=ん
38=っ
39=ゃ
3A=ゅ
3B=ょ
3C=ア
3D=イ
3E=オ
3F=カ

40=キ
41=ク
42=コ
43=サ
44=シ
45=ス
46=タ
47=テ
48=ト
49=ナ
4A=ウ
4B=ヌ
4C=ハ
4D=ヒ
4E=フ
4F=ホ

50=マ
51=ミ
52=ム
53=メ
54=モ
55=ラ
56=ル
57=レ
58=ロ
59=ン
// Heroic symbols.
5A=☼
5B=★
5C=◑
5D=[SLIME]
5E=♥
5F= 

60=E
61=G
62=H
63=L
64=M
65=P
66=V
67=X
68=。
69=、
// 6A and 6B are 6C and 6D put below.
6C=″
6D=°
6E=?
6F=!

70=「
71=*
72=→
73=↓
74=:
75=…
// Text box corners.
// West.
76=[WC]
// North.
77=[NC]
// North, last line stripped.
78=[NSC]
// Northwest.
79=[NWC]
// Southwest.
7A=[SWC]
// East.
7B=[EC]
// Northeast.
7C=[NEC]
// South.
7D=[SC]
// Southeast.
7E=[SEC]
7F=ー

80=じ
81=だ
82=ぶ
83=ド
85=A
86=B
87=C
88=D
89=F
8A=ッ
// "Equipped" marking corner.
8B=[|E]
8C=ど
// Referential bank beginning.
8F=そなたに ふっかつのじゅもんを

90=ローレシア
91=サマルトリア
92=ムーンブルク
93=ハーゴン
94=ポイントの
95=ゴールド
96=だいしんかんハーゴン
97=しそんたち
98=あなたがた
99=ふくびきけん
9A=ございま
9B=もんしょう
9C=どうくつ
9D=ください
9E=ゆうしゃ
9F=おうじ

A0=わたしは
A1=ざいほう
A2=のカギ
A3=じゅもん
A4=です。
A5=ましょう
A6=どこか
A7=もってい
A8=ています
A9=ロトの
AA=わたし
AB=あなた
AC=だい
AD=じゃ
AE=どう
AF=たび

B0=ます。
B1=です
B2=しかし
B3=おおカミよ!
B4=います
B5=ります
B6=しょう
B7=てくれ
B8=ている
B9=すか?
BA=かった
BB=おお
BC=よう
BD=ここ
BE=まし
BF=ます

C0=しま
C1=なか
C2=い。
C3=もの
C4=れた
C5=ない
C6=た。
C7=た!
C8=たち
C9=には
CA=たか
CB=して
CC=した
CD=しは
CE=から
CF=かい

D0=おう
D1=おし
D2=きた
D3=この
D4=いて
D5=いま
D6=うこ
D7=が
D8=ぎ
D9=げ
DA=ご
DB=ざ
DC=じ
DD=ず
DE=ぞ
DF=だ

E0=で
E1=ど
E2=ば
E3=び
E4=ぶ
E5=ありがとうございま
E6=どこからともなく うつくしい
E7=どうぐ
E8=ざい
E9=ダメージを
EA=こえが きこえる……。
EB=ロンダルキア

Pointers

Most of them works just like Dragon_Warrior:TBL. Some dialogues can be programmed to close after some time, so the wait for response, from end-strings, may not work.

Every pointer that searches trough memory, uses absolute addresses trough little-endian: 5A00 reads the address 0x00A5, where it is often found the main character's name. It is important to notice: each one from these memory searching routines, can be used anywhere!

The reserved space for integers threats the forthcoming zeroes as blank space.

Wait for Response

  • 73=↓

Paragraph

  • 8D=*「
Not Used
  • 8E=0000「

The old princess Lola one.

Accenting

  • EE=″
  • EF=°

String of Characters from Memory

Print the selected entry from the memory. The end-strings are used as breakpoints for reading, or else: FA, FC, and FF break the loop. Even though each one is used accordingly, wasn't noticed differences between them.

Menus

EDxxyy, values used: 0001.

Dialogues

F2xxyy, values used: 5A00.

Integer Value from Memory

They print an integer value read from the memory, with a imposed limit for reading (number of bytes) and printing (number of characters).

There is also the positioning difference, being some proper for menus: the number of used characters is unique, and not according to the printing (fixed), with forward reservation (at the beginning).

1 Byte

F0xxyy, values used: ...

2 Bytes
3 Fixed Characters

ECxxyy, limit: 999, 0x3E7. Values used: 0701; 3B06; 4D06; 5F06.

5 Characters

F3xxyy, limit: 65.535, 0xFFFF. Values used: 8F00; ...

5 Fixed Characters

F1xxyy, values used: 0101; 0401; 0701; 0A01; 0D01; 1001; 2406.

3 bytes

F4xxyy, limit: 7 characters, 9.999.999, 0x98967F. Values used: 0C01; 3306; 4506; 5706. Always related to experience.

Referential Bank Indexes

They are 1 byte values, at the memory address told by the posterior word, that presents the index, but starting from different addresses in the binary image.

The fixed ones reserve characters for printing, like those from the integer fetching, but backwardly! The dynamic ones are only used with the word 9500.

Magic

Starting at address 0x18BCC.

Fixed

F5xxyy, limit: 5 characters. Values used: 0001; 0101; 0201; 0301; 0401; 0501; 0601; 0701; 0801; 0901.

Dynamic

F8xxyy, used only once.

Item

Starting at address 0x18748.

Fixed

F6xxyy, limit: 7 characters. Values used: 0001; 0101; 0201; 0301; 0401; 0501; 0601; 0701; 0901; 0C01; 0F01.

Dynamic

F9xxyy.

Run Length Encoding

F7xxyy, the main difference, from the original Dragon Quest, is that it works correctly at dialogues!

End-string for the Referential Bank

  • FA

This end-string only acts at the place it has been called, breaking the operation. That is why it is used in the memory.

End-string 1

  • FC

Variable

  • FD

It always seems to be the same as F25A00.

Line Break

  • FE

End-string 2

  • FF

Dragon Warrior

  • Text is built up out of pieces that are five or ten bits in length.
  • The underlying characters for each piece are from 0xB49B to 0xB686. Abbreviated TBL below.
  • The piece lengths are from 0xB44B to 0xB49A. One nibble per piece.
  • You can think of the pieces as one table with 160 entries, or five tables with 32 entries each.
  • The 1st table handles bit patterns 00000 through 11011.
  • The 2nd table handles 11100 xxxxx, the 3rd 11101 xxxxx, the 4th 11110 xxxxx, the 5th 11111 xxxxx.
(Source: Alchemic)

Table for main script

/00000=[end]
/00001=.[end]
/00010=?[’ -66][FD][FD][end]
/00011=[.’][end]
00100=[FF]
00101=y
00110=c
00111=o
01000=d
01001=e
01010=f
01011=g
01100=h
01101=i
01110=j
01111= 
10000=l
10001=m
10010=n
10011=[line]
10100=[.’]
10101=[ ‘]
10110=r
10111=s
11000=t
11001=u
11010=a
11011=w
11100=[switch to C0 table]
11101=[switch to C1 table]
11110=[switch to C2 table]
11111=[switch to C3 table]

1110000000=A
1110000001=B
1110000010=Ca
1110000011=D
1110000100=E
1110000101=F
1110000110=G
1110000111=H
1110001000=I
1110001001=J
1110001010=King
1110001011=L
1110001100=Moonbrooke
1110001101=N
1110001110=O
1110001111=[item]
1110010000=The 
1110010001=Rhone 
1110010010=S
1110010011=;
1110010100=U
1110010101=”
1110010110=Water Flying Cl
1110010111=C
1110011000=Y
1110011001=Z
1110011010=x
1110011011=Village 
1110011100=z
1110011101=[F9]
1110011110=‟
1110011111=K

1110100000=v
1110100001=q
1110100010=[’ -66][wait][line]
1110100011=R
1110100100=.
1110100101=[FD][FD]
1110100110=P
1110100111=b
1110101000=T
1110101001=!
1110101010=[sun]
1110101011=[star]
1110101100=[moon]
1110101101=W
1110101110=k
1110101111=p
1110110000=?
1110110001=,
1110110010=[monster]
1110110011=....
1110110100=:
1110110101=[’ -67]
1110110110=-
1110110111=[’ -66]
1110111000=[spell]
1110111001=[letter]
1110111010=[no voice]
1110111011=[wait]
1110111100=M
1110111101=[name]
1110111110=[number]
1110111111=[FD]

1111000000=Thou hast
1111000001=hest
1111000010=Midenhall
1111000011=hou 
1111000100= of 
1111000101= is 
1111000110= thou has
1111000111= and 
1111001000=to th
1111001001= thee
1111001010=ast
1111001011= do
1111001100=hat 
1111001101= shall 
1111001110= was 
1111001111=hou has
1111010000=d the
1111010001= has 
1111010010=gon
1111010011=.[wait][line]
1111010100= have 
1111010101=come to 
1111010110=ing
1111010111= hast
1111011000=ost thou
1111011001=this
1111011010= of the 
1111011011=Hargon
1111011100=in the 
1111011101=thing
1111011110=he 
1111011111= with

1111100000=reasure 
1111100001=[ ‘]Hast 
1111100010=Erdrick
1111100011=come
1111100100=ere is 
1111100101=Welcome 
1111100110=rince
1111100111= great
1111101000=arr
1111101001= for th
1111101010=piece[(s)] of gold
1111101011=[.’][wait][line]
1111101100=But 
1111101101=here
1111101110=can 
1111101111=ove
1111110000=hee
1111110001=not
1111110010=for
1111110011=one
1111110100= any
1111110101= to 
1111110110=descendant
1111110111=Roge Fastfinger
1111111000=all
1111111001=thy
1111111010=[ ‘]W
1111111011=thank thee
1111111100= it
1111111101= tha
1111111110= thou 
1111111111= the
Note for template.png
Note:
The left-hand-side of each entry in this table is given in binary, not hexadecimal.
Note for template.png
Note:
Since they do not appear anywhere in this dictionary, the letters Q, V, and X are unable to be used anywhere in Dragon Warrior II's main script.


Table for end credits

00=A
01=B
02=C
03=D
04=E
05=F
06=G
07=H
08=I
09=J
0A=K
0B=L
0C=M
0D=N
0E=O
0F=P
10=Q
11=R
12=S
13=T
14=U
15=V
16=W
17=X
18=Y
19=Z
1A=0
1B=1
1C=2
1D=3
1E=4
1F=5
20=6
21=7
22=8
23=9
24252627=[CHUN]
28=-
29=[right triangle]
2A=©
2B2C2D=[enix logo line 1]
2E2F3031=[enix logo line 2]
32333435=[enix logo line 3]
36373839=[enix logo line 4]
3A3B3C3D=[enix logo line 5]

5F= 

6B=.
6C=&

6E=?
6F=!

FF00=[preceding line is green]
FF01=[preceding line is orange]
FF02=[preceding line is pink]
FF03=[preceding line is blue]
FFFF=[preceding line uses custom palette specified by next 16 bytes]

Table for everything else

00=0
01=1
02=2
03=3
04=4
05=5
06=6
07=7
08=8
09=9
0A=a
0B=b
0C=c
0D=d
0E=e
0F=f
10=g
11=h
12=i
13=j
14=k
15=l
16=m
17=n
18=o
19=p
1A=q
1B=r
1C=s
1D=t
1E=u
1F=v
20=w
21=x
22=y
23=z
24=A
25=B
26=C
27=D
28=E
29=F
2A=G
2B=H
2C=I
2D=J
2E=K
2F=L
30=M
31=N
32=O
33=P
34=Q
35=R
36=S
37=T
38=U
39=V
3A=W
3B=X
3C=Y
3D=Z
3E=a [alternate unused font]
3F=b [alternate unused font]
40=c [alternate unused font]
41=d [alternate unused font]
42=e [alternate unused font]
43=f [alternate unused font]
44=g [alternate unused font]
45=h [alternate unused font]
46=i [alternate unused font]
47=j [alternate unused font]
48=k [alternate unused font]
49=l [alternate unused font]
4A=m [alternate unused font]
4B=n [alternate unused font]
4C=o [alternate unused font]
4D=p [alternate unused font]
4E=q [alternate unused font]
4F=r [alternate unused font]
50=s [alternate unused font]
51=t [alternate unused font]
52=u [alternate unused font]
53=v [alternate unused font]
54=w [alternate unused font]
55=x [alternate unused font]
56=y [alternate unused font]
57=z [alternate unused font]
58=A [alternate unused font]

5A=[sun]
5B=[star]
5C=[moon]
5D=[water]
5E=[heart]
5F= 

61=[ ‘]
62=”
63=[right arrow]
64=‟
65=[ ‘]
66=[’ -66]
67=[’ -67]
68=[.’]
69=,
6A=-
6B=.
6C=&
#6D= 
6E=?
6F=!
70=;
71=[ ’]
72=[right triangle]
73=[down triangle]
74=:
75=..

F2=[(s)]
/FA=[end-FA]
/FC=[end-FC]
/FF=[end-FF]