-
Notifications
You must be signed in to change notification settings - Fork 6
/
LDSPEC.TXT
214 lines (138 loc) · 7.62 KB
/
LDSPEC.TXT
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
・LSX-Dodgers
・スペック
・ファイル名
データをディスクに記録する時、データはそれぞれファイルに入れて記録します。
そのためファイルには別々の名前を付けておかないといけません。
ファイル名は半角文字で8文字まで+拡張子3文字までで構成されます。
英小文字は大文字に変換されます。
システムで使用するため以下の半角文字をファイルネームと拡張子の途中に使えません。
: ; , . * + / = ? \
コロン セミコロン コンマ ピリオド
Human68k,MS-DOS,MSX-DOSとの互換の為には必ず以下の文字を用いて下さい
A~Z 0~9 & # ( ) @
^ { } ! カナ文字(+カナ記号)
これら以外の文字を使用するとHuman68kやMS-DOSやMSX-DOSでアクセス
できなくなることがあります。
・階層ディレクトリ
[<ドライブ名>:][\][<ディレクトリ名>\]…[<ディレクトリ名>\]<ファイル名>[.<拡張子>]
ファイル名までの[\][ディレクトリ名\]…[ディレクトリ名\]がパス名になります。
ここで、「\」はパス名を通すためのディレクトリ名およびファイル名を区切るための
区切り記号です。
ただし、いちばん最初の「\」は、ルートディレクトリを表わすシンボルとなります。
「\」をいちばん最初に書くとルートディレクトリからの絶対指定になります。
「..」は一つ前の親ディレクトリを示します。
..\ファイルネーム
とすると一つ戻ってファイルを指定出来ます。(相対指定)
プログラムによってはディレクトリを指定してもカレント・ディレクトリが有効と
なる場合があります。
・コマンド
コマンドは大文字でも小文字でも受け付けます。またファイル名も大文字でも小文字
でもアクセス出来ますが作成されるファイル名は大文字になります。
例)B:ドライブのディレクトリ一覧を表示させる場合(内部コマンド)
DIR B:
外部コマンドの拡張子は「.COM」と「.CPM」です。バッチファイルの拡張子は「.BAT」です。
実行の際には拡張子の入力を省略出来ます。外部コマンドはカレント・ディレクトリ、PATHで指定し
たサーチパスで指定されたディレクトリの順にサーチします。
パラメータをわたす場合コマンドの後ろにスペースを入れて下さい。
外部コマンドの例
BPBINFO B:
B:BPBINFO B:
・バッチ処理
複数のコマンドを順に並べたファイルをバッチファイルといい、バッチファイルを使ってコマンドをまとめ
て処理することができます。
バッチファイルの拡張子は.BATにします。実行の際には拡張子を省略できます。
起動時にはAUTOEXECというコマンドを実行します。
・テンプレート
コマンドラインで TAB キーを押すと前回実行したコマンドとパラメータが入力されます。
・フロッピーディスク自動判別の注意点
フロッピーディスクの判別にはMedia ID(FATID)ではなくBPBを用いて判別しています。
BPBが正しくないフロッピーはそのままでは読み込みできません。
正しくない場合は2D/2DDの場合は2D(360KB)として、2HDの場合は(1.25MB)として判別します。
・ドライブ構成(X1/turbo/Z)
@: カレントドライブ
A: フロッピーディスク0
B: フロッピーディスク1
C: フロッピーディスク2
D: フロッピーディスク3
E: EMM (要EMMボード)
F: バンクメモリディスク (要バンクメモリ)
G: グラフィックラムディスク (X1-バンク0,X1turbo-バンク1)
H: 空き
フロッピーディスクドライブは2D(360kB)/2DD(640kB)/2DD(720kB)/2HC(1.2MB)/2HD(1.2MB)/IBM(1.44MB)/2HDE(1.44MB)を自動判別します。
実機では2DDは基本的に外部に増設したドライブ専用です。
2HC(1.2MB)/2HD(1.2MB)/2HDE(1.44MB)/2HS(1.44MB)はX1turboシリーズと2HDの読み書きができるドライブが必要です。
IBM(1.44MB)はX1turboシリーズと300rpmで2HDの読み書きができるドライブが必要です。
通常の2HDドライブは360rpmです。360rpmのドライブでもドライブのマージンにより読み込みができる場合がありますが書き込みはできません。
EMM/バンクメモリディスクは
LAのERAD.BIN/HERAD.BIN,BRAD.BINと互換性があります。
EMMとバンクメモリディスクは容量を自動的に測定します。
RAMディスクはフォーマットしていないと使用できません。
・ドライブ構成(MZ-700/1500)
@: カレントドライブ
A: フロッピーディスク1
B: フロッピーディスク2
C: CMOSバッテリバックアップメモリ(32K)
D: 空き
E: EMM (要EMMボード)
F: RAMファイル(64K)
G: 空き
H: 空き
フロッピーディスクドライブは2D(360kB)/2DD(640kB)/2DD(720kB)を自動判別します。
※EMMは16MBまで自動判別します。
・ドライブ構成(PC-8801mkIISR)
@: カレントドライブ
A: フロッピーディスク1
B: フロッピーディスク2
C: 空き
D: 空き
E: 空き
F: 拡張メモリディスク (要拡張メモリ)
G: 空き
H: 空き
フロッピーディスクドライブは2D(360kB)/2DD(640kB)/2DD(720kB)/2HC(1.2MB)/2HD(1.2MB)/IBM(1.44MB)/2HDE(1.44MB)を自動判別します。
※2HD対応ROMをチェックしていて互換BIOSや2DのROMの場合は2D以外には正しくアクセスできないエミュレータがあります。
ディレクトリが見えてもアクセスできるとは限りません。
EMMとバンクメモリディスクは容量を自動的に測定します。
・ドライブ構成(MSX)
@: カレントドライブ
A: ROMカートリッジディスク
B: ROMカートリッジディスク※A:が2DD(720KB)の場合のみ
C: 空き
D: 空き
E: 物理ディスク0
F: 物理ディスク1
G: 物理ディスク2
H: 物理ディスク7
※ディスクイメージは2DD(640KB/720KB)のDSK、2HD(1.25MB)のXDF,IMG及び2HD(1.44MB)のIMG
など4MB以下のBPBを0セクタに持つMS-DOSフォーマット(FAT12/FAT16)の1セクタが1024バイトの
ディスクに対応しています。
・エスケープ・シーケンス
画面の制御を行なうのに特殊な文字列・エスケープ・シーケンス(ESCape sequence)を
用います。
このエスケープ・シーケンスはエスケープ文字(ASCIIコードの$1B)とそれに続く文字列に
よって表されます。
この特殊な文字列をシステム・コールを用いてコンソール出力する事で画面制御を
行なえます。
◇カーソル移動
<ESC>A カーソルを上に移動
<ESC>B カーソルを下に移動
<ESC>C カーソルを右に移動
<ESC>D カーソルを左に移動
<ESC>H カーソルをホーム・ポジションに移動
<ESC>Y<Y座標+$20><X座標+$20>
カーソルを(X,Y)の位置に移動
◇編集・削除
<ESC>j 画面をクリア
<ESC>E 画面をクリア
<ESC>K 行の終わりまで削除
<ESC>J 画面の終わりまで削除
<ESC>L 1行挿入 *1
<ESC>M 1行削除 *2
◇その他
<ESC>x4 カーソルの形を■にする *2
<ESC>x5 カーソルを消す *2
<ESC>y4 カーソルの形を_にする *2
<ESC>y5 カーソルを表示する *2
*1 MSX-DOSと動作が異なる
*2 LSX-Dodgersでは何もしない(MSX-DOSと動作が異なる)
MSX版はBIOSに完全にまかせており、現時点では未対応です。