-
Notifications
You must be signed in to change notification settings - Fork 5
/
CHANGES.txt
225 lines (186 loc) · 11.6 KB
/
CHANGES.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
215
216
217
218
219
220
221
222
223
224
225
[CR/LF]
===============================================================================
Ver 1.03 - 2024-11-10
===============================================================================
- [TOWNS] Fix: Always terminating CoCo. (Thanks to captainys)
===============================================================================
Ver 1.02 - 2024-10-21
===============================================================================
- Support descending extended memory mapping.
- Add: tools/free386.com for build.
- Fix: int 21h/250ah bug, always maps memory to the beginning of the selector.
===============================================================================
Ver 1.01 - 2024-09-25
===============================================================================
- Update: stop reloading CR3 in call_v86.asm.
- Update: added error when running V86 mode with non-VCPI.
- Add easy bench mark sample "test-c.exp/bench.exp".
- Fix: title is not displayed when using the "-vv" option.
- [TOWNS] Update: int 21h/AX=2511h patch for TownsOS SYSINIT bug.
- [PC/AT] Update: support VESA 2.0 VRAM mapping.
===============================================================================
Ver 1.00 - 2024-09-20
===============================================================================
- Support non VCPI enviroment.
- Add memory management system.
- Add command line options: "-maxreal, -minreal, -callbuf"
- [TOWNS] Support TownsOS (not require XMS/VCPI).
- [PC-98] Update memory mapping code.
- Fix: Improper management of free linear address (int 21h 48h/250Ah and more).
- Fix: In V86, 32bit interrupt will crash if ESP's upper 16 bits are non-zero.
- Fix: If called init_XXX_16, will be called end_XXX_16 when exiting V86 mode.
- Fix: Do not work int 21h, AH=56h (rename file).
- [TOWNS] Fix: CoCo initialization miss. This fix stabilizes TMENU.
===============================================================================
Ver 0.90 - 2023-12-28
===============================================================================
- All "call V86" routines have been rewritten.
- Support stack copy for int 21h AX=250Dh/AX=2510h
- Fix: Carry flags that should originally be saved may change.
- Support for building with Microsoft LINK.EXE.
- Fix: very rare error in heap memory calculation for exp file.
- Fix: using -vv option will cause a hang up if bits 16-31 of ebx is not 0.
- Update: tools. Newly includes flatlink and NASM 2.16.01.
- Update: int 21h, ah=4ah for Open Watcom's EXP file.
- Update: support int 21h, AX=250Dh stack parameter for 32bit routine.
- Update: set EXP file name to ENV command name.
- Update: source file names are now easier to understand.
- Update: rewrite register dump and cpu fault routines (and fix bugs).
- Update: sub.asm/sub32.asm. Cleanup and rewrite routines.
- [PC/AT] Update: machine check routine.
- [TOWNS] Fix: nsdd sleeping can take a long time.
- [Universal] Enable hardware interrupt (required by Open Watcom).
- [test-asm.exp] Fix: vsync_XX.exp, forgot to restore DS in interrupt.
===============================================================================
Ver 0.81 - 2023-12-10
===============================================================================
- Separated the call buffer returned in "int 21h, ax=250Dh"
from the internal call buffer.
- Update: internal error handling.
- Update: commnd line parameter parser.
- Fix: int 21h, ax=2501h is hang up.
- Fix: int 21h, ax=250eh is hang up.
- Fix: int 21h, ah=30h/ah=48h/ax=250Dh/ax=2511h/ax=2513h.
- Fix: int 21h, ax=2517h. (Enbug in Ver0.80)
- [TOWNS] Support TMENU.EXG and EIN.EXG
- [TOWNS] Update: NSD driver sleep procedure for COCO_MEM.EXE problem.
- [TOWNS] Update: NSD driver initialization procedure.
===============================================================================
Ver 0.80 - 2023-12-05
===============================================================================
- Improved internal memory management method (for some buffers).
- Improved dos memory management and increased call buffer size.
- More real memory is allocated than before.
- Update functionality of "-m" option.
- Change the timing of model-specific initialization.
- int 21h/4ah, changed to ignore selector limit shrinkage.
Because there is no physical memory release function.
- Add: int 24h's abort trap.
- Add: "-vv" option.
- Add: "-q" option.
- Add: int 21h, ax=250Dh, eax value set.
- Fix: Do not work int 29h and int 2fh.
- Fix: EXP's PSP memory infomation is incorrect, when EXP has a base offset.
- Fix: int 21h/4ah memory allocate bug.
- [TOWNS] Support int 8eh/ax=C207h for CoCo/NSD driver.
- [TOWNS] Support 386SX models. (Thanks to @RyuTakegami)
- [TOWNS] Fix: CRTC/VRAM auto reset bug.
===============================================================================
Ver 0.65 - 2023-11-25
===============================================================================
- Add: Debug build option "PRINT_TSUGARU" for TOWNS emulator Tsugaru.
- Add: '-2' option for set PharLap Verison to "2.2".
- Fix: int 21h, ah=30h, ebx=50484152h PharLap Verison function.
===============================================================================
Ver 0.64 - 2021-08-07
===============================================================================
- Fix: Not work if more than 4MB of XMS memory is used.
===============================================================================
Ver 0.63 - 2020/08/20
===============================================================================
- [TOWNS] Fix: Not work if not exists CoCo/NSD driver.
##############################################################################
Older version infomation in Japanese
##############################################################################
[UTF-8]
===============================================================================
Ver 0.62 - 2020/07/01
===============================================================================
・機種ごとの初期化をEXP実行直前に変更。機種ごとの初期化でセレクタを生成しても、
0ch/14h がEXPのセレクタとして設定されるようになりました。
※TOWNSにおいて CoCo 初期化時に、セレクタ決め打ちアプリが動くようになりました。
※もちろん本来は決め打ちするプログラムが悪い……
・誤ってデバッグ設定でリリースしないように定義環境を変更。
・INT_HOOK等のデバッグ設定時にハングアップしないよう修正。
===============================================================================
Ver 0.61 - 2016/12/28
===============================================================================
・ファイル読み書き時等のスピードをアップしました(Ver0.52と同等)
・他、バグ修正
===============================================================================
Ver 0.60 - 2016/12/24
===============================================================================
・リアルメモリを使用できるようになりました
・【TOWNS】NSD driver/CoCoに対応
・プログラム末尾に実在しないメモリを貼り付けていたバグを修正
・内部のメモリ管理方法、メモリマップ方法を変更
・intトラップ、レジスタダンプ機能(要再アセンブル)
・Linux環境でも正常な実行ファイルが生成できるように
・他、多数のバグ修正
===============================================================================
Ver 0.52 - 2001/03/06
===============================================================================
・EXP loadのサブルーチン化時に混入したMPヘッダ解析ミス修正(tnaks to あにくん)
・ソースを整理し、データ部分を実行ファイルの後部に纏めた。また不要なデータ除去
・簡易機種チェック機能を搭載
・未対応だった DOS-Extender拡張function のほとんどに対応
・ページテーブルを 0 初期化するように変更
・メモリ管理を変更。exp の多重ロードを可能にルーチン整備
・-offset リンクオプションの実装を変更し、不要なページを張りつけないようにした
・リンカオプションの -maxdata に対応しました。
===============================================================================
Ver 0.51 - 2001/02/21
===============================================================================
・-m オプションを追加
・EXPロード時、スタック切り換えタイミングをプログラムロード前からロード後に変更
・P3 ヘッダの "ベースアドレス" を読み込むように変更(hcd386p.exp などが動作)
・int 21h / ax=2511h に対応
・入れ子式の CPU モード切り換えに対応。Protect ←→ V86 連携ルーチンの見直し
・割り込みマスク及びリアルモードベクタの復元処理を標準搭載(ハングアップ防止)
・割り込みテーブル(IDT)を動的に確保するようにしました
・TOWNS 以外の機種、PC-9821、PC/AT互換機においても割り込みに対応しました
・DTA初期値のセレクタを 24h に変更(thanks to Mamiya(san))
===============================================================================
Ver 0.50 - 2001/02/13
===============================================================================
・オプションスイッチを追加し、色々と動作指定できるようにしました。
・メモリ確保法を VCPI から XMS に変更しました。
・MPヘッダに対応しました。
・MCB を参照して DOS環境ブロック(ENV)セレクタのサイズを適切に設定しました。
・割り込みに対応しました。
・Free386 の 内部(DOS)メモリをきちんと管理するようにしました。
・まともなページング処理ルーチンを作成しまた。
・【TOWNS】T-BIOS 及び TOWNS 固有メモリを適切に配置しました。
・多少まともなディバグルーチンを作成しました。
・一部のDOS function と、数個の DOS-Extender function に対応しました。
・いくつかの不要なルーチンを binary から削りました(まだ少しだけあります)。
・ドキュメント/マニュアルを少しだけまともに書き直しました。
・知らぬ間に MP ヘッダの GCC アプリが動作すくようになってた(爆)
・その他、修正・追加多数。
===============================================================================
sample ver - 2001/02/06
===============================================================================
・PATH386 によるファイル検索機能を搭載しました。
・ファイル書き込みのバグを修正。High-C なプログラムが動作するようになりました。
・CTRL-C による強制終了に対応しました。
・EMS の確認ルーチンを追加しました。
・不要なルーチンを "%if 0" によって無効化しました。
・無駄に確保していたメモリをいくつか削りました。ファイルサイズが減ってます。
・その他、バカらしいバグの修正。
===============================================================================
それ以前
===============================================================================
2001/01/24 ASM で書かれた簡単な EXP file のロードに成功
2000/07/14 V86←→Protect の移行部完成
2000/07/12 製作再開(汗)
1998/06/05 製作開始