-
Notifications
You must be signed in to change notification settings - Fork 6
/
ChangeLog.old
625 lines (464 loc) · 17.7 KB
/
ChangeLog.old
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
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
vdiatrib.c:: ++jrb
vst_point() binding was incorrect. (thanks scott,
common.[ch]:: ++jrb
changed order of aes encoding from AA BB CC DD to DD CC BB AA
easier to pull them out in a loop with a pointer this way.
other cosmetic changes.
aesrsrc.c, aeswin.c, aesrc.c:: ++jrb
cleanup.
mincl:: ++jrb
common makefile
makefile.16, makefile.32, gmakefile.16, gmakefile.32:: ++jrb
gnu makefiles for gemlib. all set up macros and include mincl.
common.c:: ++jrb
more efficient coding of __aes__() and __vdi__() thanks to
suggestions from Thomas Koenig ([email protected]).
old coding #ifdef'ed with #ifdef __OLD__ everywhere.
vdi*.c:: ++jrb
when __MSHORT__ dont copy pxyarray[] into _ptsin, just
make _vdiparms[] point to input array, restore before
return. -- Thanks Thomas!
vdiinq.c:: ++jrb
many patches for incorrect coding of inq functions. Thanks to
Michal Jaegermann <uunet!ugw.utcs.utoronto.ca!NTOMCZAK%UALTAVM.bitnet>
vdiinp.c:: ++jrb
patches from Michal for v??_string, also merged v??_locator
at his suggestion.
vatrib.c:: ++jrb
patch from Michal correcting _intin[0] for vst_point();
vdiesc.c:: Jens
Courtesy of Jens Tingleff (uunet!titan.ee.ic.ac.uk!jensting)
Thanks Jens. Jens explicitly dedicated the code to public domain,
removing his earlier copyleft restriction (via email).
vdibind.h:: Jens
Add vdiescapes
mincl:: ++jrb
added vdiesc targets
gemfast.h:: ++jrb
added TCC compat defn for OBJECT
aesbind.h: frank (Frank Ridderbusch, thanks frank)
adjust proto for rsrc-gaddr void** -> void *
add protos for scrp_*
common.c:: frank
vdi call for compatibility
vdibind.h: frank
fix typo v_clswd -> vclswk
add proto for vq_gdos
vdictrl1.c:: frank
fix typo v_clswd -> vclswk
aescrap.c:: frank
new file, aes scrap functions
vdiqgdos.c:: frank
vq_gdos GDOSp predicate
mincl::
add targets vdiqgdos and aescrap
vdiesc.c:: Jens
Courtesy of Jens Tingleff (uunet!titan.ee.ic.ac.uk!jensting)
Thanks Jens. Jens explicitly dedicated the code to public domain,
removing his earlier copyleft restriction (via email).
vdibind.h:: Jens
Add vdiescapes
mincl:: ++jrb
added vdiesc targets
gemfast.h:: ++jrb
added TCC compat defn for OBJECT
aesbind.h: frank (Frank Ridderbusch, thanks frank)
adjust proto for rsrc-gaddr void** -> void *
add protos for scrp_*
common.c:: frank
vdi call for compatibility
vdibind.h: frank
fix typo v_clswd -> vclswk
add proto for vq_gdos
vdictrl1.c:: frank
fix typo v_clswd -> vclswk
aescrap.c:: frank
new file, aes scrap functions
vdiqgdos.c:: frank
vq_gdos GDOSp predicate
mincl::
add targets vdiqgdos and aescrap
aesevnt.c:: roy
the two bytes of the long for the timer in evnt_timer and multi
were switched around.
gemfast.h:: ++jrb
cleanup
vdiqgdos.c:: ++jrb
added long vq_vgdos(void), return type of gdos installed.
vdifsm.c:: ++jrb
FSM gdos bindings. mildly edited version of code from atari.
makefile*:: ++jrb
add vdifsm targets
------------------------------- Patchlevel 17------------------------
vdifsm.c:: michal
bindings that actually work (as opposed to ataris !)
thanks michal
vdibind.h:: michal
diffs for fsm bindings
vdiqgdos.c:: ++jrb
vq_gdos(): should say "return retvalue"
(even though the value is in d0).
*********************** RENAME *******************
rename PatchLevel.h to PatchLev.h
**************************************************
ident.c:: ++jrb
new file for ident(1) to identify library and Patchlevel
mincl:: ++jrb
add target for ident.o
vdibind.h:: michal
add conditional #include<stddef.h> for size_t
test/fsm:: ++jrb
fix up sample FSM-fontform application for gcc.
aesrc.c:: michal
use <macros.h> for min/max
fix up rc_intersect for gcc
add grect_to_array. note: this coding returns &pxy_array[0], a
very useful value to have for vdi calls, that take a pxy_array
address as an arguement.
aesforms.c:: Thomas Koenig <uunet!CUNYVM.CUNY.EDU!UI0T%DKAUNI2.BITNET>
add missing bindings for form_keybd() and form_button().
thanks thomas!
aesbind.h::
add the protos
vdiesc1.c:: Thomas
more vdi esc bindings. this should pretty much complete the set.
thanks thomas.
vdibind.h::
add protos from vdiesc1.c
mincl::
add target for vdiesc1.o
aescrp.c:: Thomas
scrp_clear()
- aes function code should be 82 not 81
- it is not present in gem versions < 2
aesbind.h::
#if 0 out bindings for scrp_clear()
*akefil*:: ++jrb
bring them in sync with new scheme in lib
------------------------------- Patchlevel 18------------------------
common.c, common.h:: Michal
- change sizes of different "params" arrays increasing some
(_ptsin, _intin) to allow them fit better into TT world
and decreasing others to actual sizes used
- overlap vdi and aes parameter arrays to reuse memory
- change VDI_CONTRL_ENCODE macro to allow for new limits;
(see comments in common.h where other coding is required)
for sizes which can be accomodated by VDI_CONTRL_ENCODE
- modify __vdi__() to reflect changes in VDI_CONTRL_ENCODE
- add clearing of high bytes in __aes__() since they can
be clobbered now by VDI calls
vdiinp.c:: Michal
- change coding of vsm(vrq)_string to allow for negative
length, as in DRI specifications, and switch locally roles of
_intin and _intout to allow for strings up to 255 characters.
vdiatrib.c,vdiinp.c,vdiinq.c:: Michal
- replace definitions of alias labels with ones using
.stabs directive
general:: Michal
- modify source in many places in order to produce
a tighter resulting machine code
- split logically with #define's all source files into
one-function modules for purposes of a compilation and
archive creation; modify mincl accordingly (for compilation
like before use -D__DEF_ALL__ in your Makefile)
vdigdp.c vdiinq.c:: Markus Nick <uunet!mz.maus.de!Markus_Nick>
handle char code > 127. make sure they are not sign extended
while copying into intin, by cast'ing to (unsigned char), in
v_gtext() and v_justified() and vqt_extent(). thanks Markus.
------------------------------- Patchlevel 19------------------------
vdibind.h, mincl, vdifsm.c:: ++jrb
sync with ataris new release of fsmgdos
vdibind.h, vdibez.c:: ++jrb
new file. bindings for bezier curves.
vdibind.h vdiqgdos.c:: ++jrb
vq_vgdos(): return unsigned long. fix proto and inline def in
vdibind.h too
vdifsm.c, vdibind.h:: michal
michal corrected and added missing bindings. Thnaks very
much.
vdibez.c, vdibind.h, mincl:: michal
michal corrected almost the whole file.
vdictrl1.c:: markus nick
fix to v_opnvwk() bindings. was'mt passing old value of handle.
thanks markus.
MUCH THANKS to Michal Jaegermann who has been very carefully
correcting and baby sitting these bindings. He has made very
significant contributions, and lively discussions and comments.
------------------------------- Patchlevel 20------------------------
vsin_mode, vq_color:: andreas
these functions return useful things (source: ATARI ST Profibuch, Sybex).
gemfast.h, aesbind.h, vdibind.h:: andreas
fix protos, and some types.
------------------------------- Patchlevel 21------------------------
vdibind.h:: ++jrb
change all formal parameters named new to new_p (g++ complains
(thinking its a new operator)).
vdiatrib.c, vdibind.h:: marcus nick
the return type of vst_height should have been int, not void.
------------------------------- Patchlevel 22------------------------
vdibez.c:: ++jrb
dont define ALTERNATE. Makes us incompat with PureC and others.
mincl:: ++jrb
make all v_bez_in/off and v_bez_con for the lib and let the user
use whichever forms they prefer.
------------------------------- Patchlevel 23------------------------
*.h:: ++jrb
part of the common MiNT/tos lib headers adjustments.
------------------------------- Patchlevel 24------------------------
ident.c:: ++jrb
new file, giving ident(1) string. crt0 externs the symbols
to ensure that these idents get pulled into the executable
while linking. then doing an ident(1) on the executable
yields versions of everything that is linked in.
mincl:: ++jrb
add target for above.
------------------------------- Patchlevel 25------------------------
gemfast.h:: ++jrb
sync with mntlib 25
------------------------------- Patchlevel 26------------------------
gemfast.h:: ++jrb
add new types for popup menus (falcon aes)
dont declare _addrin/_addrout for gcc, because they are # defines
in our case, not real arrays. (see common.h)
aesmenu:: ++jrb
new bindings for popup/scroll menus (falcon aes)
menu_popup() menu_attach() menu_istart() menu_settings()
aesbind.h:: ++jrb
add protos for new bindings.
mincl:: ++jrb
add targets for new menu_*() fns
vdibez.c:: ++jrb
bring stuff in sync with the bez docs in SpeedoGdos. no new
functions. just more info about the old ones, and some of the
bindings have contrl[2|4] set to specific values (and the
docs dont say why!).
vdiinq.c:: ++jrb
updated the comment at the top about vqt_name() since its
official now in the SpeedoGDOS docs.
vdifsm.c:: ++jrb
v_killoutline() doesnt exist any more
v_getoutline() is totally changed
vst_error() -- make it 16/32 bit clean.
vqt_advance32() -- new fn
vst_setsize32() -- new fn
vst_arbpt32() -- new fn
v_ftext_offset() -- new fn
vst_charmap() -- new fn
vst_kern() -- new fn
vqt_fontheader() -- new fn
vqt_trackkern() -- new fn
vqt_pairkern() -- new fn
v_getbitmap_info() -- totally new
mincl, vdibind.h:: ++jrb
adjust for above changes.
------------------------------- Patchlevel 27 -------------------------------
gemfast.h:: andreas
ICONBLK does not have the field ib_resvd. i dont
know introduced that, but it is definitly wrong, and loses
on RSC files (sizeof(ICONBLK) == 34).
vdiesc1.c:: andreas
all functions with subcode > 31 must be coded "by hand".
vdibez.c/vdiesc1.c: andreas
opcode of v_bez_qual conflicts with v_write_meta
(the other conflicts are reasonable). I dont have the
official documentation, so no patch included.
well i looked up all the docs i have. this seems to be ok because
the two will be distinguished by intin[0]. in the case of v_bez_qual()
intin[0] = 32. in the case of v_write_meta(), intin[0] has to be
something other than [0-100], so we should be fine. ++jrb
------------------------------- Patchlevel 28 -------------------------------
vdifsm.c:: Leif: [email protected]
vst_error takes the address of a variable in mode==1 that lives longer
beyond the call. therefore we must install the address that is passed
to vst_error() and not use the int matching temp. this also implies
that the pointer must be to a 16 bit entity, therefore i changed
the interface to be a short *.
vdiesc1.c:vm_filename() :: Erling Henanger ([email protected])
The code for finding the length of the filename string was wrong.
It compares two pointers to short, which yields twice as much as the
difference between two pointers to char...
------------------------------- Patchlevel 29 -------------------------------
aesbind.h, aesevnt.c:: Stefan Steyer ([email protected])
The problem is, that if you compile without -mshort, the '16 bit halfs'
are passed as 32 bit values through the stack. If you define __OLD_WAY__
you push 64 bit, and if not, only 32 bit. Every parameter you pushed
to the stack before is not where it should be.
soln: #define evnt_multi when __OLD_WAY and have it push one long on
the stack, which __evnt_multi will pick up.
make __evnt_multi synonymous with event_multi in aesevnt.c.
------------------------------- Patchlevel 30 -------------------------------
pure_c.prj:: Christer Gustavsson ([email protected]) cg
Created project file for Pure C.
common.c:: cg
Modified to be compilable with Pure C.
vdiatrib.c:: cg
Modified for Pure C.
vdibez.c:: cg
Modified for Pure C.
vdiinp.c:: cg
Modified for Pure C.
vdiinq.c:: cg
Modified for Pure C.
xgemdosc.s/xgemdosc.h:: cg
Pure C version of vdi/aes traps.
compiler.h:: cg
Since gemlib now is ported to Pure C compiler.h had to be changed
to enable the prototypes that differ from Pure C's own gemlib.
gemfast.h:: cg
Missing structs and definitions included.
aesappl.c:: cg
appl_getinfo added.
appl_search added.
aesbind.h:: cg
Missing (new) prototypes added.
aesobj.c:: cg
objc_sysvar added.
mincl:: cg
Modified to include new calls.
aesrsrc.c:: cg
rsrc_rcfix added.
------------------------------- Patchlevel 31 -------------------------------
gemfast.h:: cg
Now supports color icons.
3d-object defines added.
AES global array defines added.
OBJC_COLORWORD added.
TEDINFO struct altered to include font id and font size.
Defines for different font types added.
New (correct) version of MN_SET. To get the old version define
OLD_MNSET.
Mode definitions for menu_tnormal added.
Mode definitions for shel_get added.
Return value definitions for v_updwk added.
Mode definitions for v_bez added.
Mode definitions for v_bit_image added.
Mode definitions for v_justified added.
Mode definitions for vq_color added.
vq_gdos return value definitions moved from vdibind.h to gemfast.h.
Mode definitions for vqin_mode added.
Mode definitions for vqt_cachesize added.
Return value definitions for vqt_devinfo added.
Return value definitions for vqt_name added.
Mode definitions for vsf_interior added.
Mode definitions for vsf_perimeter added.
Mode defnitions for vsl_ends added.
Mode definitions for vsl_type added.
Mode definitions for vsm_type added.
Mode definitions for vst_charmap added.
Mode definitions for vst_effects added.
Mode definitions for vst_error added.
Return value definitions for vst_error added.
Mode definitions for vst_kern added.
Mode definitins for vst_scratch added.
aesbind.h:: cg
Bug in the __OLD_WAY__ binding of evnt_multi() fixed.
------------------------------- Patchlevel 32 -------------------------------
aeswin.c:: cg
Change of in wind_get() to work with WF_DCOLOR and WF_COLOR.
aesappl.c:: cg
Bug in appl_search() fixed.
gemfast.h:: cg
Added _AESrshdr (_global[7-8]), an undocumented variable pointing to
the header of a loaded resource file.
------------------------------- Patchlevel 33 -------------------------------
*.c:: cf
AES and VDI uses different control arrays called
aes_global, aes_control, aes_intin, ees_intout, aes_addrin, aes_addrout
and
vdi_intin, vdi_intout, vdi_ptsin, vdi_ptsout, vdi_control
The old arrays (_intin, _intout, _ptsin, _ptsout, _contrl, _global)
doesn't exists any longer!
appl.c:: cf
Add appl_yield() and appl_bvset().
form.c:: cf
Add form_popup().
gemfast.h:: cf
Some bugfixes (WM_BOTTOMED, CH_EXIT, ICONBLK)
AESPB and VDIPB defined.
shel.c:: cf
Bug in shel_envrn() fixed.
wind.c:: cf
Add wind_set_str() for 'int-size independent' window string setting.
mt_*:: cf
Add a thread-save AES lib.
------------------------------- Patchlevel 34 -------------------------------
gemfast.h:: cf
Add extended object flags (FLAG12 - 15) and state (STATE08 - 15)
appl.c:: cf
mt_appl.c::
Add appl_control() (N.AES)
shel.c:: cf
mt_shell.c
Add shel_help() (N.AES)
wind.c:: cf
mt_wind.c
Some usefull extension: wind_get_grect(), wind_set_grect(),
wind_calc_grect(), wind_create_grect() wind_open_grect()
gemfast.h:: cf
Remove compatibility define __TCC_COMPAT__.
Rename U_OB_SPEC to OBSPEC
Add some constants for VDI
Rename vst_effects-constants from xx to TXT_xx
------------------------------- Patchlevel 35 -------------------------------
gemfast.h
Increased VDI arrays
Definition of STATE15 was wrong
aesrc.c
Add array_to_grect()
aesbind.h
Remove __OLD_BIND__ for evnt_multi()
magxbind.h
magxfnts.c
magxform.c
magxfslx.c
magxpdlg.c
A new lib which contains the MagiC-only AES calls
mt_*
Removed from gemlib because I don't have mind to support a lib that
anybody needs. Or is there someone who need it??
gemfast.h
Change type and rename a component of AESPB and VDIPB
Rename _aes/_vdiparms to aes/vdi_parms
Makefile
Split into Makefile, Makefile.gem and Makefile.magx
aesbind.h
aesshel.c
Add shel_rdef() and shel_wdef() (MagiC, N.AES)
------------------------------- Patchlevel 36 -------------------------------
aesappl.c
Wrong binding at appl_search()
magxpdlg.c
pdlg_save_default_settings() added
gemfast.h
Remove ALT_MFDB
Remove ORECT, VRECT and Rect
----------------
Restructured the whole lib:
- Remove the AES/VDI_CONTROL_ENCODE because this method don't work
for in/out counters higher than 255!
- Add new trap-functions aes(AESPB *pb) and vdi(VDIPB *pb)
- Clean-up the whole VDI part of the lib.
- Add full NVDI support (versions 2, 3, 4 and 5)
- Split the lib into two parts:
gem.olb the core AES/VDI functions, supported by TOS, MultiTOS
and N.AES.
gemx.olb all extensions of NVDI, FSM/Speedo-GDOS, MagiC, WDIALOG
- Create new headers, one for each lib: gem.h and xgem.h
Don't panic - there is a backward-compatibility for aesbind.h/
vdibind.h/gemfast.h :-)
------------------------------- Patchlevel 37 -------------------------------
x_fnts.c
Misc wrong bindings fixed.
v_inquire.c
Wrong binding for vq_color() fixed.
gem.h
OLD_MNSET removed
struct bfobspec renamed to BFOBSPEC
struct Mouse renamed to MOUSE
------------------------------- Patchlevel 38 -------------------------------
gem.h
Add the extended object types of MagiC
gem.h
v_attrib.c
vql_attribute() renamed to vql_attributes()