home *** CD-ROM | disk | FTP | other *** search
Text File | 1993-11-17 | 55.8 KB | 1,351 lines |
-
- V40 Kickstart Release Notes
-
- ************************************************************************
- * *
- * COPYRIGHTS *
- * *
- * UNLESS OTHERWISE NOTED, ALL FILES ARE *
- * *
- * Copyright (c) 1985-1993 Commodore-Amiga, Inc. All Rights Reserved *
- * *
- ************************************************************************
-
-
- ************************************************************************
- * *
- * COPYRIGHTED DEVELOPER MATERIALS *
- * *
- ************************************************************************
-
- THIS SOFTWARE AND INFORMATION IS COPYRIGHTED.
-
- THIS SOFTWARE AND INFORMATION MAY NOT BE REDISTRIBUTED, DISCLOSED,
- OR DUPLICATED, IN WHOLE OR IN PART, IN ANY MANNER OTHER THAN AS
- SPECIFIED IN A SIGNED AGREEMENT WITH COMMODORE.
-
- ************************************************************************
- * *
- * DISCLAIMER *
- * *
- * THIS SOFTWARE AND INFORMATION IS PROVIDED "AS IS". *
- * NO REPRESENTATIONS OR WARRANTIES ARE MADE WITH RESPECT TO THE *
- * ACCURACY, RELIABILITY, PERFORMANCE, CURRENTNESS, OR OPERATION *
- * OF THIS SOFTWARE AND INFORMATION, AND ALL USE IS AT YOUR OWN RISK. *
- * NEITHER COMMODORE NOR THE AUTHORS ASSUME ANY RESPONSIBILITY OR *
- * LIABILITY WHATSOEVER WITH RESPECT TO YOUR USE OF THIS SOFTWARE *
- * AND INFORMATION. *
- * *
- ************************************************************************
-
-
-
- AMIGA KICKSTART V40.65
-
-
- A3000:
-
- Building kickstart 40.65 from BuildList <A3000> : 03-Nov-93 17:00:56
-
- exec 40.10 @ $F80000-$F837D8 Size: 14296 (15.7.93)
- layers 40.1 @ $F837D8-$F8698C Size: 12724 (15.2.93)
- keymap 40.4 @ $F8698C-$F8760C Size: 3200 (12.3.93)
- mathffp 40.1 @ $F8760C-$F87AA8 Size: 1180 (16.3.93)
- scsidisk 40.8 @ $F87AA8-$F8A79C Size: 11508 (3.11.93)
- audio 37.10 @ $F8A79C-$F8B83C Size: 4256 (26.4.91)
- battclock 39.3 @ $F8B83C-$F8C1A8 Size: 2412 (20.4.92)
- battmem 39.2 @ $F8C1A8-$F8C38C Size: 484 (6.3.92)
- rawinput 40.1 @ $F8C38C-$F8D9C0 Size: 5684 (8.3.93)
- wbtag 39.1 @ $F8D9C0-$F8DA84 Size: 196 (20.4.92)
- con-handler 40.2 @ $F8DA84-$F90248 Size: 10180 (12.5.93)
- console 40.2 @ $F90248-$F93ECC Size: 15492 (5.3.93)
- misc 37.1 @ $F93ECC-$F93F7C Size: 176 (8.1.91)
- dos 40.3 @ $F93F7C-$F9DB88 Size: 39948 (1.4.93)
- bonus 40.1 @ $F9DB88-$F9DC88 Size: 256 (15.2.93)
- fs 40.1 @ $F9DC88-$FA3C28 Size: 24480 (15.2.93)
- graphics 40.24 @ $FA3C28-$FBCCB4 Size: 102540 (18.5.93)
- icon 40.1 @ $FBCCB4-$FBF0E4 Size: 9264 (15.2.93)
- strap 40.1 @ $FBF0E4-$FBFFFC Size: 3864 (8.3.93)
- Kickety-Split ------- @ $FC0000-$FC0008 Size: 12 bytes skipped
- utility 40.1 @ $FBFFFC-$FC09C4 Size: 2504 (10.2.93)
- filesysres 40.1 @ $FC09C4-$FC0B64 Size: 416 (15.2.93)
- mathieeesingbas 40.4 @ $FC0B64-$FC0E50 Size: 748 (16.3.93)
- potgo 37.4 @ $FC0E50-$FC0F88 Size: 312 (28.1.91)
- ram 39.4 @ $FC0F88-$FC3400 Size: 9336 (9.8.92)
- disk 37.2 @ $FC3400-$FC3748 Size: 840 (21.4.91)
- ramlib 40.2 @ $FC3748-$FC3B6C Size: 1060 (5.3.93)
- bootmenu 40.5 @ $FC3B6C-$FC517C Size: 5648 (17.3.93)
- shell 40.2 @ $FC517C-$FC965C Size: 17632 (4.3.93)
- timer 39.4 @ $FC965C-$FCA448 Size: 3564 (29.7.92)
- expansion 40.2 @ $FCA448-$FCAFEC Size: 2980 (9.3.93)
- trackdisk 40.1 @ $FCAFEC-$FCCCF4 Size: 7432 (12.3.93)
- ramdrive 39.35 @ $FCCCF4-$FCD2E8 Size: 1524 (21.5.92)
- intuition 40.85 @ $FCD2E8-$FE6C88 Size: 104864 (5.5.93)
- gadtools 40.4 @ $FE6C88-$FEC81C Size: 23444 (24.5.93)
- wb 40.5 @ $FEC81C-$FFDC24 Size: 70664 (24.5.93)
- cia 39.1 @ $FFDC24-$FFE014 Size: 1008 (10.3.92)
-
- Build of kickstart 40.65 completed at : 03-Nov-93 17:01:32
-
-
- A1200:
-
- Building kickstart 40.65 from BuildList <A1200> : 03-Nov-93 17:05:12
-
- exec 40.10 @ $F80000-$F837B8 Size: 14264 (15.7.93)
- expansion 40.2 @ $F837B8-$F84290 Size: 2776 (9.3.93)
- mathieeesingbas 40.4 @ $F84290-$F85134 Size: 3748 (16.3.93)
- graphics_aa_nt 40.24 @ $F85134-$F9E5B8 Size: 103556 (18.5.93)
- dos 40.3 @ $F9E5B8-$FA81C4 Size: 39948 (1.4.93)
- fs 40.1 @ $FA81C4-$FAE164 Size: 24480 (15.2.93)
- console 40.2 @ $FAE164-$FB1DE8 Size: 15492 (5.3.93)
- layers 40.1 @ $FB1DE8-$FB4F9C Size: 12724 (15.2.93)
- a300 40.8 @ $FB4F9C-$FB792C Size: 10640 (3.11.93)
- con-handler 40.2 @ $FB792C-$FBA0F0 Size: 10180 (12.5.93)
- bootmenu 40.5 @ $FBA0F0-$FBB700 Size: 5648 (17.3.93)
- audio 37.10 @ $FBB700-$FBC7A0 Size: 4256 (26.4.91)
- cardres 40.4 @ $FBC7A0-$FBD384 Size: 3044 (4.5.93)
- utility 40.1 @ $FBD384-$FBDD40 Size: 2492 (10.2.93)
- battclock 39.3 @ $FBDD40-$FBE6AC Size: 2412 (20.4.92)
- carddisk 40.1 @ $FBE6AC-$FBEFDC Size: 2352 (12.2.93)
- disk 37.2 @ $FBEFDC-$FBF324 Size: 840 (21.4.91)
- mathffp 40.1 @ $FBF324-$FBF7C0 Size: 1180 (16.3.93)
- cia 39.1 @ $FBF7C0-$FBFBB0 Size: 1008 (10.3.92)
- wbtag 39.1 @ $FBFBB0-$FBFC74 Size: 196 (20.4.92)
- potgo 37.4 @ $FBFC74-$FBFDAC Size: 312 (28.1.91)
- misc 37.1 @ $FBFDAC-$FBFE5C Size: 176 (8.1.91)
- filesysres 40.1 @ $FBFE5C-$FBFFFC Size: 416 (15.2.93)
- Kickety-Split ------- @ $FC0000-$FC0008 Size: 12 bytes skipped
- ramlib 40.2 @ $FBFFFC-$FC042C Size: 1072 (5.3.93)
- ramdrive 39.35 @ $FC042C-$FC0A20 Size: 1524 (21.5.92)
- strap 40.1 @ $FC0A20-$FC1938 Size: 3864 (8.3.93)
- timer 39.4 @ $FC1938-$FC2724 Size: 3564 (29.7.92)
- keymap 40.4 @ $FC2724-$FC33A4 Size: 3200 (12.3.93)
- rawinput 40.1 @ $FC33A4-$FC49D8 Size: 5684 (8.3.93)
- trackdisk 40.1 @ $FC49D8-$FC66E0 Size: 7432 (12.3.93)
- icon 40.1 @ $FC66E0-$FC8B10 Size: 9264 (15.2.93)
- ram 39.4 @ $FC8B10-$FCAF88 Size: 9336 (9.8.92)
- shell 40.2 @ $FCAF88-$FCF468 Size: 17632 (4.3.93)
- intuition 40.85 @ $FCF468-$FE8E08 Size: 104864 (5.5.93)
- gadtools 40.4 @ $FE8E08-$FEE99C Size: 23444 (24.5.93)
- wb 40.5 @ $FEE99C-$FFFDA4 Size: 70664 (24.5.93)
- battmem 39.2 @ $FFFDA4-$FFFF88 Size: 484 (6.3.92)
-
- Build of kickstart 40.65 completed at : 03-Nov-93 17:05:50
-
-
- A4000:
-
- Building kickstart 40.65 from BuildList <A4000> : 03-Nov-93 17:06:28
-
- exec 40.10 @ $F80000-$F837C0 Size: 14272 (15.7.93)
- layers 40.1 @ $F837C0-$F86974 Size: 12724 (15.2.93)
- cia 39.1 @ $F86974-$F86D64 Size: 1008 (10.3.92)
- strap 40.1 @ $F86D64-$F87C7C Size: 3864 (8.3.93)
- a1000 40.8 @ $F87C7C-$F8A5E8 Size: 10604 (3.11.93)
- bootmenu 40.5 @ $F8A5E8-$F8BBF8 Size: 5648 (17.3.93)
- battclock 39.3 @ $F8BBF8-$F8C564 Size: 2412 (20.4.92)
- ramdrive 39.35 @ $F8C564-$F8CB58 Size: 1524 (21.5.92)
- rawinput 40.1 @ $F8CB58-$F8E18C Size: 5684 (8.3.93)
- disk 37.2 @ $F8E18C-$F8E4D4 Size: 840 (21.4.91)
- con-handler 40.2 @ $F8E4D4-$F90C98 Size: 10180 (12.5.93)
- console 40.2 @ $F90C98-$F9491C Size: 15492 (5.3.93)
- potgo 37.4 @ $F9491C-$F94A54 Size: 312 (28.1.91)
- dos 40.3 @ $F94A54-$F9E660 Size: 39948 (1.4.93)
- bonus 40.1 @ $F9E660-$F9E760 Size: 256 (15.2.93)
- fs 40.1 @ $F9E760-$FA4700 Size: 24480 (15.2.93)
- graphics_aa_nt 40.24 @ $FA4700-$FBDB84 Size: 103556 (18.5.93)
- ram 39.4 @ $FBDB84-$FBFFFC Size: 9336 (9.8.92)
- Kickety-Split ------- @ $FC0000-$FC0008 Size: 12 bytes skipped
- timer 39.4 @ $FBFFFC-$FC0DF4 Size: 3576 (29.7.92)
- audio 37.10 @ $FC0DF4-$FC1E94 Size: 4256 (26.4.91)
- filesysres 40.1 @ $FC1E94-$FC2034 Size: 416 (15.2.93)
- wbtag 39.1 @ $FC2034-$FC20F8 Size: 196 (20.4.92)
- mathffp 40.1 @ $FC20F8-$FC2594 Size: 1180 (16.3.93)
- icon 40.1 @ $FC2594-$FC49C4 Size: 9264 (15.2.93)
- ramlib 40.2 @ $FC49C4-$FC4DE8 Size: 1060 (5.3.93)
- misc 37.1 @ $FC4DE8-$FC4E98 Size: 176 (8.1.91)
- mathieeesingbas 40.4 @ $FC4E98-$FC5D3C Size: 3748 (16.3.93)
- shell 40.2 @ $FC5D3C-$FCA21C Size: 17632 (4.3.93)
- keymap 40.4 @ $FCA21C-$FCAE9C Size: 3200 (12.3.93)
- expansion 40.2 @ $FCAE9C-$FCB9CC Size: 2864 (9.3.93)
- trackdisk 40.1 @ $FCB9CC-$FCD6D4 Size: 7432 (12.3.93)
- utility 40.1 @ $FCD6D4-$FCE090 Size: 2492 (10.2.93)
- intuition 40.85 @ $FCE090-$FE7A30 Size: 104864 (5.5.93)
- gadtools 40.4 @ $FE7A30-$FED5C4 Size: 23444 (24.5.93)
- wb 40.5 @ $FED5C4-$FFE9CC Size: 70664 (24.5.93)
- battmem 39.2 @ $FFE9CC-$FFEBB0 Size: 484 (6.3.92)
-
- Build of kickstart 40.65 completed at : 03-Nov-93 17:07:03
-
-
- The following notes pertain to differences between Kickstarts 39.106
- (Release 3.0) and 40.65 (Release 3.1):
-
- These notes do not include the change notes for the CD32 modules cd.device,
- lowlevel.library, or nonvolatile.library since these are new subsystems.
- See the autodocs for these new subsystems for more information.
- Lowlevel.library and nonvolatile.library are expected to be provided
- in disk-loadable library on Workbench 3.1.
-
- Changed:
-
- bonus 40.1
- bootmenu 40.5
- carddisk.device 40.1
- cardres 40.3
- console.device 40.2
- con-handler 40.2
- dos 40.3
- exec 40.10
- expansion 40.2
- filesysres 40.1
- fs/ffs 40.1
- gadtools 40.4
- graphics 40.24
- icon 40.1
- intuition 40.85
- keymap 40.4
- layers 40.1
- mathffp 40.1
- mathieeesingbas 40.4
- ramlib 40.2
- rawinput 40.1
- scsidisk 40.8
- shell 40.2
- strap 40.1
- trackdisk 40.1
- utility 40.1
- wb 40.5
-
-
- Details follow:
-
-
- bonus V40.1
-
- - Bumped version to V40. (40.1)
-
-
- bootmenu 40.5
-
- - Fixed bug where the chip type mutual exclude gadget was being
- displayed even on pre-ECS machines. (39.20)
-
- - Bumped version to V40. (40.2)
-
- - When it brings up the "Expansion Board Diagnostic" screen as a result
- of a bad board in the system, it now reboots the system when the user
- clicks Continue. Added ROM-tag handling to prevent reentering the
- same screen after the reboot is done. (40.2)
-
- - Miscellaneous fixes. (40.4)
-
- - Removed clean-up code used right before BootMenu reboots the
- system. (40.5)
-
-
- carddisk 40.1
-
- - Now uses TaggedOpenLibrary (saves some ROM) (39.1)
-
- - Remove dead code for raw i/o (also saves some ROM) (39.1)
-
- - Flush cache during data writes in anticipation of 040 copyback
- cache on A1200 (no hardware support for PCMCIA memory space data
- cache control provided, so the data cache is still potentially
- a problem when programming flash rom; means turning off the
- data cache globally for 030/040 A1200's to support 6-10us
- write/verify timing). (39.1)
-
- - Bumped version to V40. (40.1)
-
-
- cardres 40.3
-
- - Now leaves PCMCIA slot disabled if any RAM is configured at $600000;
- this allows use of >4Megs of 24bit RAM on the A1200 at the expense of
- being unable to use the PCMCIA slot. (39.1)
-
- - Partial work around for a hardware bug in our PCMCIA implementation
- which presents 2Meg+ addresses everytime we access ATTRIBUTE memory.
- This causes a problem when a >2Meg card which ignores REG is used
- (and a potential problem with any card which tries to decode the
- entire address when REG is set). The former problem is kludged
- around by trying to sniff out mirroring of 4 bytes at $A00000 and
- $800000 but not mirrored at $600000. (39.1):
-
- - Considerably faster memory sizing for SRAM/DRAM cards (does test of
- every 256 words/long-words). (39.1):
-
- - BVD1/SC, BVD2/DA, and BSY/IRQ status change interrupts can now be
- individually enabled/disabled. WR (Write-Protect) status change
- interrupts are always enabled (rare), and there is no change in the
- defaults. This is intended for future use if needed (e.g., Flash-ROM
- which expects software to poll SC during programming; better
- performance can be obtained if interrupts are not generated). If
- needed on the A600, this can be implemented as documented work
- around, or SeFunction() of CardMiscControl(). No expected change
- for existing software; defaults are the same as they use to be in
- V37 card.resource. Spurious interrupts (change true, but interrupt
- disabled) are cleared by the resource software, and hidden from the
- status change callback hook. (39.1)
-
- - Secondary callback option for status change interrupts; allows
- high-performance hardware to be serviced via interrupts only (instead
- of Signal()ing a task). (39.1)
-
- If needed on the A600, this can be implemented as a documented work
- around. To expected change for existing software; default behavior
- is the same, and the bit used to enable the secondary status change
- callback has been documented as MUST BE SET TO 0 (and the only known
- device driver is carddisk.device, which does the right thing).
-
- - Flush Cache when ReleaseCard() is called. A flush before full release
- ensures that no more writes will occur once the caller returns from
- ReleaseCard(). This is to support the 040 copyback cache when/if an
- 040 becomes available for the A1200. Would prefer control over the
- data cache for PCMCIA space independent of the first 4MEG of 24bit
- Fast RAM, but we don't have this feature. Lack of Data Cache control
- for PCMCIA space is still potentially problematic for use of FlashROM
- programming which requires disabling the DATA cache for 030/040
- equipped A1200's so that fast (6-10us) write/read operations can be
- performed during programming. Disabling the DATA cache during
- FlashROM writes means disabling globally. (39.1)
-
- - Bumped version to V40. (40.2)
-
- - Miscellaneous fixes. (40.3)
-
-
- console 40.2
-
- - Bumped version to V40. (40.1)
-
- - Miscellaneous fixes. (40.2)
-
-
- con-handler 40.2
-
- - Bumped version to V40. (40.1)
-
- - Miscellaneous fixes. (40.1)
-
- - Fixes any possible remaining hole where a ^C could be sent to a
- non-existant process, and removes any chance of an Enforcer hit
- while trying to decide if the process still exists.
-
- Note that this searches the exec task lists under Disable(), so on
- a heavily-loaded (with tasks) system this might affect MIDI.
- (40.2)
-
-
- dos 40.3
-
- - GetDeviceProc() now returns errors better (especially
- ERROR_NO_MORE_ENTRIES). It used to lose error codes by calling
- UnLock(). (39.25)
-
- - Fixed bug in RemAssignList(): it wouldn't remove the first lock in
- the assign. (39.26)
-
- - AttemptLockDosList() was returning NULL or 1 for failure instead of
- NULL. (39.26)
-
- - Made RunCommand() free any memory added to the tc_MemEntryList by
- the command. tc_MemEntryList is now saved and emptied before calling
- the command, and restored after any added memory is freed. (39.26)
-
- - Fixed exall emulation to not lose 1 file each time the list is broken
- up into multiple ExAll() calls. (39.26)
-
- - Removed broken attempted fix for rda_Buffer. Autodocs now reflect
- that you must restore rda_Buffer before each call to ReadArgs() if
- you pass in an RDArgs structure. Now always clears rda_Buffer in
- FreeArgs(). (39.26)
-
- - SetVBuf() re-enabled. (39.26)
-
- - Changed some prototypes to avoid C++ reserved word "template".
- Changed VPrintf()/VFPrintf() prototypes to VOID * from LONG * to
- reduce useless compiler warnings/casts. (39.26)
-
- - SetVBuf() now updates the filehandle so it won't overwrite the buffer
- with a smaller one if SetVBuf() is called before doing buffered IO.
- Also it doesn't allocate anything if the new size is the same as the
- old. (39.26)
-
- - SetVar() now creates subdirectories as needed (including multiple
- ones) if they do not exist already (in ENV: and in ENVARC: if
- GVF_SAVE_VAR is set). Also, it now preserves any IoErr() and won't
- try to save to ENVARC if there is an error saving to ENV:. (39.26)
-
- - Modified to fix an edge condition which existed when making the mod
- to SetVBuf(). (39.26)
-
- - Close() doesn't free a SetVBuf() user-supplied buffer if the
- user Close() the file. Fixed. (39.27)
-
- - ExAll() emulation doesn't return the directory the user is exalling.
- Fixed. (39.27)
-
- - Bumped version to V40. (40.1)
-
- - Fixes Enforcer hit on ExNext with NULL lock. Now returns
- INVALID_LOCK error. (40.3)
-
- - Fixes bad packet on ExAllEnd. (40.3)
-
-
- exec 40.10
-
- - Now added the full support for the Zorro-III quick interrupts.
- The new LVO (in an old slot) ObtainQuickVector() is used to allocate
- the vector. There is no deallocation since this is basically
- a configuration issue and not a dynamic thing. (39.50)
-
- - On machines with PCMCIA cards, EXEC now makes sure the interface
- is turned on at boot time and then will turn it off before
- configuration. This should let a full 8-meg of RAM be added in the
- Zorro-II space.
-
- This change requires an update to the credit card resource/device
- such that it will correctly turn on the interface if needed. (39.50)
-
- - The Quick Interrupt vectors that have not yet been added used to
- be -1. Now they point at an Alert that is the new Unexpected
- Quick Interrupt. (39.50)
-
- - Updated the ObtainQuickVector() autodocs to reflect that the
- V37.175 ROMs do not have a blank vector at the end of EXEC. (39.52)
-
- - Changed the copyright information to show 1993. This will
- thus automatically fix everyone else :-) (39.55)
-
- - Bumped version to V40. (40.0)
-
- - Just changed to V40 so that the Version commands will work right.
- (40.0)
-
- - Removed the last of the old Procure/Vacate code. (40.2)
-
- - The SAD documentation was changed to reflect the real command numbers
- (rather than what was planned). (40.3)
-
- - Fixed SAD commands from SAD V39 (write byte was broken and the docs
- were a bit wrong as to the command format...) (40.6)
-
- - Miscellaneous housekeeping changes. (40.7)
-
- - Miscellaneous housekeeping changes. (40.9)
-
- - Disabled quick interrupts. This avoids the problem with the A4091
- and quick interrupts. V39 exec didn't have quick interrupts enabled,
- only beta V40's. (40.10)
-
-
- expansion 40.2
-
- - New - A1200 specific build that can detect CPU Slot RAM ($08000000)
- if you have a 32-bit addressing CPU installed. The CPU slot area
- is 128meg in size (just like the A3000) but has the addition of
- a wrap check at each 1meg of space in the CPU address space to make
- low-cost RAM expansion possible without jumpers. (It is now possible
- to get 128Meg SIMMs so a single SIMM on a CPU card could make a
- 128Meg of FAST RAM system )
-
- The reason that this has to be A1200 specific (at least for now)
- is that the behavior of the existing A500/A2000 CPU cards with
- respect to 32-bit addresses is very undefined. They act very
- strangely and differently making it very difficult to safely figure
- out if these cards are operating correctly or not.
-
- No code changes for anything but the new A1200 version of the
- library. (39.8)
-
- - Bumped version to V40. (40.1)
-
- - Two major bugs found in the A3000 memory test/CPU Card test.
- Both were fixed. (40.1)
-
- - CPU Card space is now able to be more than 128Meg. (We can grab
- 3 * 256Meg more since we don't start Zorro-III until $40000000
- anyway...) (40.1)
-
- - CPU Card space test now also does mirror testing. (40.1)
-
- - Due to the fixes, some forms of the code have gotten a bit smaller,
- specifically, the A3000, A4000, and A1200 versions. (40.1)
-
- - Reworked the memory test to deal with extra-high capacitance
- bus systems. (40.2)
-
-
- filesysres 40.1
-
- - Now matches the FS version change. (39.3)
-
- - Bumped version to V40, picks up filesystem version. (40.1)
-
-
- fs 40.1
-
- - Fixed deletion of the destination of a hardlink - this was badly
- broken in all versions of the FS, DCFS just made it easier to hit.
- This was causing spurious "Checksum Error on Block 0" errors (and
- potentially others), especially when UUCP was using a DCFS partition.
- (39.29)
-
- - Fixed a returncode which would make softlinks not work if a softlink
- to a directory is in the middle of a path. (39.30)
-
- - Fixed the buffer overrun on ExAll with ED_COMMENT if the first
- character was >$80 (and lost the first character of comments).
- (39.30)
-
- - Fixed updating the date of a directory that changes in the parent
- of that directory's dircache. (39.30)
-
- - There were old offsetting bugs in the exall filename/comment copying
- code. When I fixed the code not to copy too many bytes, the clear was
- being done to the wrong byte. (39.30)
-
- - Bumped version to V40. (40.1)
-
- - Fix to deletion of destination of a hardlink - an offset into the
- stack was wrong. (40.1)
-
- - Directory notification re-enabled. (40.1)
-
- - Support for SectorsPerBlock added. (40.1)
-
-
- gadtools 40.4
-
- - Fixed bugs in clipping code in TEXT_KIND and NUMBER_KIND gadgets. The
- clipping didn't work correctly on right and center justified text, and
- was under-evaluating the number of pixels available for the text in a
- gadget that didn't have borders. (39.359)
-
- - Fixed bug in the calculation of the default value for the
- GTSL_MaxPixelLen tag. This caused odd clipping of the number display
- for sliders whenever the title of the gadget wasn't on the same side
- of the slider as the display of its current value. (39.359)
-
- - Fixed GTJ_CENTER option for the various GTXX_Justification tags. The
- way centering was done could cause certain characters to get lost.
- (39.360)
-
- - Bumped version to V40. (40.1)
-
- - Fixed bug where TEXT_KIND and NUMBER_KIND gadgets wouldn't render
- correctly if the text was center or right justified, and GTTX_Clipped
- or GTTX_Border were not used. (40.1)
-
- - Fixed bug where the selected item and the scroll bar would not get
- updated correctly when going from a list with items, to a ~0 list,
- and finally to an empty list. When switching to the empty list, the
- two components would remain unchanged. (40.2)
-
- - Fixed activation/deactivation problem with the arrows on scroller
- gadgets. Except for the initial creation of a scroller gadget,
- the GA_Disabled tag was being ignored. (40.3)
-
- - Unused items in a listview are now rendered using BACKGROUNDPEN
- instead of being rendered with the window's backfill hook (via
- EraseRect()). This is more appropriate. (40.4)
-
-
- graphics 40.24
-
- - Fixed some problems with narrow ViewPorts. All work well now in AA
- and ECS machines. Narrow ViewPorts on 'A' machines (and emulated 'A')
- still broken in Hires modes. (39.97)
-
- - These fixes also fixed the problem with ViewPorts narrower than the
- DClips losing pixels on the RHS under ECS (reported a gazillion times
- on BIX with the palette requester screen). (39.97)
-
- - LoadView() was not calling the MonitorSpec->KillView() vector with the
- MonitorSpec in a0, as documented. The only monitor using a KillView()
- so far is the A2024 driver, and that didn't use the MonitorSpec
- parameter anyway, so there is no impact in fixing this. (39.97)
-
- - A minor change made to BestModeIDA() - better weighing of ModeIDs with
- similar aspect ratios. So, if BestModeIDA() is passed a NominalWidth
- and Height of 322x200, the result will be LORES non-laced instead of
- HIRES LACE, which is the same aspect ratio as LORES non-laced, but
- the LORES is a better fit. (39.97)
-
- - CoerceMode() now ignores the AVOID_FLICKER option if the ViewPort
- being coerced is interlaced. (39.97)
-
- - Changed the default value of the ViewExtra->TopLine from 0 to a
- constant TOPLINE. (39.97)
-
- - Fixed sprite bug on ECS machines. If the view was at the maximum
- vertical overscan, the sprite pointer would disappear or screw up on
- the top line of a programmable mode. Fixed MoveSprite to take account
- of the difference in the vertical counter between ECS and AA. (39.97)
-
- - LoadRGB4 with 0 colors now does nothing. (39.97)
-
- - ScrollVPort should now not mess up the bitplane pointers for a
- HAM8 screen. (39.97)
-
- - When blitting from an interleaved source to an interleaved destination
- using BltBitMaskRastPort, the mask data would be interpreted as
- interleaved. Work-around for versions of graphics library older than
- this one is to copy the source bitmap, and zero its pad field before
- blitting. (39.97)
-
- - Fix for bltbitmap trashing low byte of d7 when interleaved. (39.97)
-
- - ScrollVPort, and ChanegVPBitMap HAM8 fix incorporated. (39.97)
-
- - Change to BuildVP which allows one extra line of vertical overscan
- in programmable modes. (39.97)
-
- - Added vertical blank counter in GfxBase for Intuition use. (39.97)
-
- - Fixed potential Enforcer hit when sprite size is changed while
- the active view is nil. (39.97)
-
- - Huge clean-up of the GfxAssociate()/GfxLookUp()/GfxFree() code. This
- code had two problems:
-
- 1) There was no locking around the hash table! This was fixed with a
- new semphore in GfxBase.
-
- 2) The hash table was meant to handle hash collisions by chaining
- entries. The code never actually did this. All it would do was
- place the entry in the next available slot. This meant that there
- could only be n entries in the hash table (where n = 256 from 2.01
- to 2.03, or n = 8 from 2.04 until now). Now fixed by correctly
- chaining hash collisions. (39.98)
-
- - ViewPorts whose top edge was completely off the bottom of the display
- would have one line of garbage on the last visible line. This was
- because the clipping code clipped the bottom of the ViewPort to the
- bottom of the monitor, but the top of the Viewport was only clipped to
- the top of the monitor. This resulted in a display window whose bottom
- edge was higher than its top edge, although this display window was
- still outside of the displayable region. Now, if this condition is
- found, MakeVPort() will not generate any intermediate copper
- instructions (because they should never be executed), frees the
- vp->DspIns intermediate copper list, and sets vp->DspIns to NULL.
- When MrgCop() finds a NULL vp->DspIns, it will ignore the whole
- ViewPort, just as it does if the VP_HIDE bit is set. This is so that
- Spr/Clr/UCopIns instructions which are still around will not be
- merged with the other ViewPorts. This may be (though is unlikely) a
- compatibility problem, with anyone expecting their UserCopperlists to
- be merged with the rest of the system, irrespective of their
- ViewPort's position. (39.100)
-
- - Minor autodoc change in AllocBitMap. (39.100)
-
- - Fixed newly introduced bug in ScrollVPort which would word-swap the
- plane pointers in one case. (39.100)
-
- - Fix for TextFit Y clipping in. There may still be a bug in the x
- direction with proportional fonts, this is still being looked at.
- (39.100)
-
- - ChangeVPBitMap will now no longer hang with video overscan hires-lace.
- It will also now not flash on a double-ntsc 320x200 screen which is
- dragged down. (39.100)
-
- - The code in MakeVP() that detects the number of sprites requested and
- tries to drop the bandwidth to fit was unecessarily checking if the
- difference between the current DDFSTRT and the required DDFSTRT was
- less than 8. This meant that a Hires screen at MaxOScan with sprite
- #1 would not drop the bandwidth (and sprite 1 would not be visible),
- but if sprite #2 was used it would drop the bandwidth to accomodate,
- and sprite 2 would be visible. (39.100)
-
- - Found another case in the DblPAL monitor where positioning two
- viewports on 256-line boundaries, MrgCop() would build a bad
- copperlist. This code was all in the get_hwait_hack() function, and
- it turned out to be easier to redesign the code that actually
- calculates the X position on line 255 than to hack in another cusp
- case. Hopefully, all of the possible cases have been trapped,
- including multiple consecutive WAIT(0xff, xxx) instructions for
- monitors with more than 512 lines per frame (namely, DblPAL and
- Motivator). Testing will tell! If there is a bug in this code, it
- will have more chance of being seen in PAL modes. (39.100)
-
- - If the user viewport has a ViewPortExtra attached, ScrollVPort will
- now cache copper-list addresses in it. This can make a major
- difference in performance, particularly on a 256-color screen.
- MrgCop invalidates this cache. (39.102)
-
- - VideoControl() now supports a new tag, VC_IntermediateCLUpdate.
- When this is set to false, ScrollVPort will not affect the
- intermediate copper-lists for a viewport, thus gaining speed.
- This requires a small bit of Intuition support to be safe in
- a screen. SetRGBxxx and ChangeVPBitMap will soon also pay
- attention to this bit. This flag can be checked for by
- VC_IntermediateCLUpdate_Query,&var. Note that this
- tag introduces a new naming scheme for VideoControl.
- VC_xxx tags use sane parameter returning methods, instead
- of the brain-damaged way that VTAG_xxx tags work. (39.102)
-
- - Size optimization in VideoControl. It was using ti->ti_Data
- zillions of times. Each loop iteration now stores this in a
- variable to save 100 million dereferences. (39.102)
-
- - ChangeVPBitMap now supports VC_IntermediateCLUpdate tag for disabling
- modification of intermediate copper lists. (40.1)
-
- - Fixed bug in ChangeVPBitMap when auto-scroll screens were scrolled off
- of the top. Now clips DyOffset against the monitor's min_row. (40.1)
-
- - Re-wrote color copper-list poker. Now faster most of the time. It also
- supports VC_IntermediateCLUpdate, which makes color-loading
- significantly faster ALL the time. Also smaller, and simpler. (40.1)
-
- - Code-space optimization. Library init code was using a local variable
- to point to GfxBase most of the time, when it could simply use A6.
- (40.1)
-
- - Fixed another MrgCop problem. User Copper lists which execute on
- line 255 could cause lower viewports to vanish. It will be a miracle
- if this actually works without breaking anything else. (40.1)
-
- - Bumped version to V40. (40.1)
-
- - The internal CalcFMode() was looking at the wrong register when
- checking if BytesPerRow was correct for the required alignment. This
- was causing some misaligned promoted screens to be skewed. (40.1)
-
- - Now *safely* changes the default monitor setting. This was previously
- unlocked, and could result in a database query returning the wrong
- information if the default monitor was concurrently being changed.
- (40.1)
-
- - Big size optimization in MakeVPort also nearly doubles its
- performance. (40.1)
-
- - Changed ChangeVPBitMap to not reply immediately to the "safe-to-write"
- message when VP_HIDE is set. This should prevent some animations
- from taking 100% CPU when their screen is put behind. Also fixed a
- bug in the signalling system. (40.1)
-
- - Now sets copinit->wait_forever to contain a write to bplcon3.
- This will cause LoadView(NULL) to switch the sprite resolution
- back to normal. (40.1)
-
- - The flag "LPEN_SWAP_FRAMES" is initialized to ON for old Agnii.
- (40.1)
-
- - The Genloc enable bit in copinit will now be correct as soon as
- the genloc is detected, instead of until the first screen. (40.1)
-
- - Fixed a bug in BestModeID(). If you pass BestModeID()
- BIDTAG_MonitorID with DEFAULT_MONITOR, the result would always be
- INVALID_ID. (40.1)
-
- - BestModeID() no longer checks monitor compatibility unless passed
- a special flag from CoerceMode(). (40.1)
-
- - Added locking around promotion state changes. (40.1)
-
- - Fixed a bug where, when booting a AA machine into ECS mode, the
- database values for Max/VideoOScan MaxX in SuperHires were wrong.
- (40.1)
-
- - When LightPens are enabled, some versions of Agnus swap the Long
- and Short frames over, some don't, and there is no ID bit software
- can read. I have defined a new DisplayFlags bit called
- LPEN_SWAP_FRAMES, which is set by default. LPen s/w can then set
- up a test to ask the user if there are visible problems, and if
- so, clear this flag. (40.1)
-
- - The NTSC/PAL ScanDbl modes I introduced last time had the
- DIPF_IS_WB bit set. This is now cleared. (40.1)
-
- - VC_NoColorPaletteLoad tag for VideoControl() inhibits the loading of
- all color registers except color 0 for the ViewPort. (40.1)
-
- - When switching from lace to non-lace, it was possible Agnus/Alice to
- be stuck in SHF mode. Now checks that for NTSC/PAL screens, as well
- as the programmed modes which it was checking before, but only writes
- to vposw if the mode is SHF. Hopefully, this won't cause the display
- problems with Amber we had last time we tried this. (40.1)
-
- - Added monitorinfo->mouse_ticks for Intuition use. (40.1)
-
- - Fixed copper.i to match copper.h. (40.4)
-
- - Autodoc fix in GetExtSprite (40.4)
-
- - WritePixelArray8 totally re-written to use chunkytoplanar hardware.
- (40.4)
-
- - This fixed a bug report of a 4 bitplane NTSC interlaced WB in
- front of CED on ECS machines would cause garbled displays. (40.4)
-
- - Found a bug in CalcIVG() that had been present since it was first
- written. CalcIVG() looks at CopIns->Count to count the copper
- instructions. However, CopIns->Count also includes those
- instructions that are unique to Long and Short frames. In edge
- conditions, it was possible that CalcIVG() would return a value
- one line too large, which naturally causes MrgCop() at line 255
- to fail. (40.4)
-
- - Added "non-dual-playfield dual-playfield" support, via
- VC_DUALPF_Disable VideoControl() tag. Changed MakeVPort,
- VideoControl(), and create_color_bits() (40.6)
-
- - Fixed a bug where VC_NoColorPaletteLoad_Query would return the
- reverse of the current state. (40.6)
-
- - Fixed the V39 bug where the "Attach" bits would not be set for
- sprites created with the SPRITEA_Attached tag. (40.6)
-
- - Fixed MrgCop() bugs. (40.12)
-
- - The code that calculates the STRADDLES_256 flag was not halving
- the inter-viewport gap in interlaced screens. Fixed. (40.12)
-
- - ScrollVPort now behaves as if dual-playfield screens with no
- rasinfo->Next are non-dual-playfield screens. (40.12)
-
- - BOBs would render incorrectly to obscured smart-refresh and
- superbitmap windows on interleaved screens. Fixed. (40.12)
-
- - 60/50hz clock bit fix. (40.16)
-
- - Fixed MungWall hit. (40.16)
-
- - Fixed screen flashing with ECS emulation on AA bug. (40.18)
-
- - "GetColorMap fails under memoration" problem fixed. (40.19)
-
- - Some depths of ScanDoubled beam-sync modes required an odd number of
- lines in the inter-viewport gap, but MrgCop() always doubled the
- WAIT position in ScanDouble displays. Now adds 1 to the WAIT
- position if a flag in the CopList->Flags shows that this is a "half
- line" gap; this flag is set in CalcIVG(). (40.20)
-
- - Check if the CopList being merged is vp->SprIns, vp->ClrIns or
- vp->UCopIns before checking the STRADDLES_256 flag. (40.20)
-
- - Removed check for SetDefaultMonitor failing and pulling an alert
- in graphics library init. (40.23)
-
- - When changing between PAL and NTSC views (and presumably between
- other monitor types too), occasionally the machine could freeze.
- The cause is unknown, but our current theory is that disabling
- RASTER DMA in the middle of a fetch cycle could be dangerous. We
- now try to ensure that we don't disable RASTER DMA in the middle
- of a fetch cycle. This is an improvement, although tests show this
- to not be perfect. Brings the crash interval from a few minutes to
- many hours of continuous screen flipping. (40.23)
-
- - ScrollVPort would fail to modify the FMODE value in the intermediate
- copper list of an interlaced screen. This is because it was looking
- for a DIWHIGH move followed by an FMODE move. The interlaced
- intermediate copper lists have two DIWHIGH moves, and have LF/SHF
- bits set in the opcodes. Fix was to AND out the LF/SHF bits and to
- make it skip as many DIWHIGH writes as appear.
- one AND.L #immed + 1 bra.s. (40.24)
-
-
- icon 40.1
-
- - Bumped version to V40. (40.1)
-
- - No longer calls alert for the silly case. (40.1)
-
-
- intuition 40.85
-
- - Menus are now brought on-screen much faster than before. The extra
- memory required to do this is freed immediately after the menu is
- drawn onto the display. If that memory isn't available, menus are
- brought on-screen the old way. Menus are removed from the screen
- several times faster than before. (39.2192)
-
- - The menu code has been massaged (mostly unifying item-panels and
- subitem-panels), which saved a bunch of code. (39.2192)
-
- - When a window is resized, the window drag-bar no longer flashes.
- (39.2192)
-
- - If a screen is opened before DOS sends Intuition the first SetPrefs(),
- the pointer will be the ROM default pointer, instead of being blank.
- (39.2192)
-
- - If you used a boopsi string gadget as an integer gadget, with
- Intuition supplying the buffer, and you specified a STRINGA_MaxChars
- of > 15, you would get a mismatched FreeMem() when the gadget is
- disposed. This is now fixed. (39.2192)
-
- - Certain OpenScreen() failures would erroneously CloseFont()
- GfxBase->DefaultFont even though it had not been opened. This is now
- fixed. (39.2192)
-
- - For 3.0, there were some changes to clean up autoscroll, in particular
- to fix bugs when an absolute input device (such as a tablet) is used.
- Mostly incidental to that change, a problem was being caused as a
- result of inadvertently switching the autoscroll boundary to be the
- DClip of the active screen, where it used to be the "hull" of the
- DClips of all the screens. If there are two screens in the system
- with different DClips, the mouse can be way outside the DClip of the
- smaller screen. If that screen is active, it will AutoScroll at a
- ridiculous rate. For example, if the mouse is seventeen pixels below
- its DClip, moving it down one pixel causes the screen to autoscroll
- by eighteen, instead of one. This is now fixed. (39.2192)
-
- - Intuition now updates its internal time values based on (nearly) _any_
- InputEvent it receives, instead of just IECLASS_TIMER ones. The
- problem was that outgoing IntuiMessages get their time from this
- internal time, which meant that IntuiMessage time was the time-stamp
- of the most recent timer tick, instead of the time-stamp of the event
- that actually triggered this IntuiMessage. This problem completely
- precludes correlating an IntuiMessage with the InputEvent that caused
- it, which is important for tablet people, for example. (39.2210)
-
- - If the TimeStamp of an event would be a step backwards in time or
- farther forward than one second, Intuition doesn't heed it. However,
- Intuition _always_ respects IECLASS_TIMER TimeStamps, which allows
- changes to system-time to be picked up. (39.2339)
-
- - If a child screen is dragged off the bottom of the display, and the
- scan-rate changes (say by Amiga-M changing to a screen of a different
- scan-rate), the child screen would be accidentally brought up so one
- scan line was visible. This bug is now fixed. (39.2339)
-
- - In frameiclass, the IM_FRAMEBOX method now accounts for the extra room
- of the new-for-V39 frame types. In the initial V39, frameiclass
- ignored the new frame types when computing how much bigger the frame
- box needed to be when compared to the contents. (39.2256)
-
- - After creating the BarLayer of a SCREENQUIET screen, Intuition now
- changes its backfill hook to the screen's LayerInfo backfill hook.
- This fixes the bug where the part of a window obscuring the title-bar
- area of a SCREENQUIET screen wasn't erased when the window was closed.
- (Effectively, Intuition was relying on a layers side-effect that was
- optimized out for V39). (39.2339)
-
- - Fixed the bug where changing coercion Preferences (specifically the
- "Avoid Flicker" option) could leave a screen illegally positioned.
- (39.2339)
-
- - Clarified some comments and removed a redundant test in Intuition's
- MakeVPort() code. Intuition is verified ready for the graphics fix
- that prevents minor display garbage if a ViewPort is completely off
- the bottom of the display. (39.2339)
-
- - The ImageClass OM_GET method now uses UnpackStructureTags() (the
- packing table already existed for the OM_SET method). (39.2339)
-
- - A child screen fully off the bottom of the display no longer
- autoscrolls up. The old way, it could trap a parent/child pair of
- screens in an undraggable condition. (39.2275)
-
- - Fixed a recent bug where an overscanned screen could get pulled down
- by autoscroll under certain conditions. (Autoscroll isn't supposed to
- pull screens down below their DClip top). (39.2339)
-
- - An off-the-bottom child screen can no longer mess up Intuition's mouse
- limits (which could leave a screen unreachable under certain
- conditions). (39.2339)
-
- - ScreenPosition(SPOS_MAKEVISIBLE) of a coerced screen now works right.
- (39.2339)
-
- - The mouse scaling factors are now correct for double-NTSC monitors.
- (39.2339)
-
- - Keyboard control of the mouse cursor moves the mouse exactly one
- screen pixel at a time. This only worked when a window was active,
- but now it works even if no window is active. (39.2339)
-
- - Fixed several bugs with non-draggable child screens (39.2332):
-
- Non-draggable child screens whose DClips don't match their parent's
- come up in the right place.
-
- Non-draggable child screens whose widths don't match their parent's
- no longer wrap when you drag the parent.
-
- SPOS_FORCEDRAG now allows non-draggable child-screens to move
- horizontally.
-
- Non-draggable child screens didn't have their top edge validated
- correctly against their parent's when they are first opened.
-
- When resizing a window, the erasing of the old border and old GRELxxx
- gadgets has been optimized to flash a lot less and be faster. When
- changing the activation state of a window, the border re-rendering
- has been optimized.
-
- Fixed a hole in the state machine where a task whose priority exceeds
- that of input.device could get into trouble calling Intuition if a
- function it called (eg. ScreenToBack()) got deferred because of the
- state Intuition was in (eg. user was dragging a screen). Intuition
- was missing a lock and was implicitly relying on task priority for
- things to clean up in the right order.
-
- If OpenWindow() failed to create the window layer(s), Intuition would
- fail to repair any damage that might have been caused in to other
- windows of the screen.
-
- If a MENUVERIFY window was ever sent a MENUVERIFY/MENUWAITING message
- (because the user accessed the menus of some other window on the same
- screen), then every normal MENUPICK from that point on would be
- immediately preceded by a spurious MOUSEBUTTONS/MENUUP message.
-
- While processing a menu command-key, if Intuition timed out waiting
- for the application to reply the MENUVERIFY, Intuition would fail to
- send a MENUPICK/MENUNULL message. Also, two memory-allocation failure
- paths in the MENUVERIFY code had the same problem. These are all
- fixed, as MENUVERIFY applications need the guarantee of receiving a
- MENUPICK and/or a MOUSEBUTTONS/MENUUP for every MENUVERIFY.
-
- Attached screens which are opened as SA_Exclusive now form an
- exclusive family, allowing the benefits of both. This used to fail.
-
- SetIPrefs() now bounds-checks the Overscan values it receives, which
- could be illegal if the user added or removed the VGAOnly monitor, or
- changed between PAL and NTSC in BootMenu.
-
- - When Intuition splits a single InputEvent into button and movement
- components, the button event is now sent first. This fixes some
- inconsistencies with extended input information like pressure, as
- well as odd behavior of the qualifiers, in particular
- IEQUALIFIER_MIDBUTTON. (39.2339)
-
- - One of the important input token fields is now longword aligned.
- (39.2339)
-
- - When Intuition splits a single InputEvent into button and movement
- components, the button event is now sent first. This fixes some
- inconsistencies with extended input information like pressure, as
- well as odd behavior of the qualifiers, in particular
- IEQUALIFIER_MIDBUTTON. (39.2339)
-
- - One of the important input token fields is now longword aligned.
- (39.2339)
-
- - The code to detect damage caused when a gadget method performs
- ScrollRaster() or ScrollRasterBF() turns out to be in fundamental
- conflict with an application using ScrollRaster() or ScrollRasterBF()
- in an Intuition window. It turns out that Intuition can throw away
- damage that the application needs. ScrollWindowRaster() is safe.
-
- The change is that until a gadget with the GMORE_SCROLLRASTER
- property is added to a window, the ScrollRaster() damage detection
- code does not run for that window. This means that it is V37-
- compatible until a GMORE_SCROLLRASTER gadget enters the picture.
- If the user app uses one of those, he must switch any use of
- ScrollRaster[BF]() within the application to ScrollWindowRaster().
- The gadget must continue to use ScrollRaster[BF](), however. The
- biggest complication would come from using some gadget class the user
- doesn't control the source to. How does the user know if it
- currently uses GMORE_SCROLLRASTER, or might in the future? If the
- user uses such a class, switch to ScrollWindowRaster(). (39.2369)
-
- - IESUBCLASS_PIXEL NEWPOINTERPOS events with IEQUALIFIER_RELATIVEMOUSE
- were broken. This is now fixed. (39.2369)
-
- - The WBenchToFront() and WBenchToBack() functions call ScreenDepth()
- through the LVO. (39.2369)
-
- - RefreshWindowFrame() now correctly redraws the window title if someone
- pokes the title string or title string pointer directly. (39.2369)
-
- - When an application obtains use of a sprite other than the pointer
- sprite, by using the old GetSprite() call, Intuition now arranges for
- the sprite pixel resolution to fall back to ECS compatibility. Users
- of ExtSprites are unaffected. (39.2369)
-
- - FreeScreenBuffer() now does a WaitBlit() before FreeBitMap().
- (39.2369)
-
- - Figuring out where the user clicked in a string gadget now uses
- TextFit() instead of successive TextLength()s. (39.2369)
-
- - Calls to MoveScreen() or ScreenPosition() have always been ignored
- while the user is dragging a screen or sizing/dragging a window.
- These calls are now deferred, which is preferable and fixes a problem
- encountered with the new Palette Prefs when it opens the color wheel
- on a separate screen. (39.2369)
-
- - Did a general autodoc cleanup, including proof-reading of all V39
- references. Also, there was some minor cleanup to the include files.
- Notable changes: (39.2369)
-
- The ScrollWindowRaster() autodoc has been elaborated.
-
- There are now definitions for 2.0-style system gadgets
- (GTYP_WZOOM, GTYP_WDEPTH, etc.). The 1.3-style definitions
- are now defined in terms of the new ones.
-
- Pointerclass.h|i now contains notes on the compatibility fallback
- techniques used by Intuition/graphics when sprites other than
- the pointer sprite are used.
-
- - Calling NewModifyProp() while the user is dragging the slider knob can
- no longer leaves behind trash remnants of the knob. (39.2415)
-
- - Intuition used to hard-code relationships between monitors and how
- many "database ticks" to move the pointer when the mouse itself moves.
- Intuition now obtains this information from the MonitorInfo structure,
- if it is there, and falls back to the old way if it is absent. This
- data still needs to be added to the graphics database. (39.2415)
-
- - The string "Workbench Screen" is now localizable. (39.2415)
-
- - Fixed a long-standing Enforcer hit which can occur if you click the
- mouse after the last screen has closed (say during Workbench reset).
- (39.2415)
-
- - Fixed a long-standing Enforcer hit which can occur if you activate a
- window with a requester in it by clicking on a system gadget in that
- window. (The bug is most detectable if no active window has had a
- requester in it since the computer was turned on). (39.2415)
-
- - Graphics has added a performance enhancement via VideoControl()
- which allows an application to request that its ViewPort's
- intermediate copper-lists not be kept up-to-date. Intuition now
- detects and handles such ViewPorts correctly by ensuring that
- MakeVPort() is always invoked on such a ViewPort if MrgCop() is going
- to be called. (39.2415)
-
- - The public screen list is now case-insensitive. (39.2415)
-
- - Bumped the version to V40. (40.29)
-
- - Fixed a race condition with closing the Workbench which could cause
- LockPubScreen(NULL) to return garbage. (40.29)
-
- - Fixed a hole in the public screen uniqueness test where if two
- screens tried to open simultaneously with the same public screen
- name, it was possible that both would succeed, instead of the second
- one failing with OSERR_PUBNOTUNIQUE. (40.29)
-
- - Screens whose bitplanes are not sufficiently aligned to be promoted
- are now promoted into a lower resolution, instead of being shown
- scrambled. This fix requires the latest graphics.library and a new
- DblNTSC and DblPAL monitor. This ought to allow Boing! to come up
- promoted (albeit in extra-lores). (40.29)
-
- - Added a new tag, SA_MinimizeISG, which requests that Intuition give
- the smallest possible inter-screen gap, instead of enforcing the old
- compatible minimum. This is required to use the new graphics
- VC_NoColorPaletteLoad VideoControl() tag. (40.29)
-
- - The calculation of the menu panel size now takes into account the
- height of the Amiga-key symbol, and the IntuiText TopEdge. This fixes
- some possible crashes when using a too-big Amiga-key. (40.29)
-
- - Fixed a bug where if a window failed to zoom due to lack of memory,
- Intuition would nevertheless update the future zoom size/position to
- the current size/position. A window which uses title-bar zooming
- (like our Prefs editors do) could have been stranded in its small
- state. (40.29)
-
- - Removed code that calls OpenMonitor() and CloseMonitor(), since
- they're unnecessary. (40.29)
-
- - Fixed a small bug in border redrawing when resizing a window which had
- no depth gadget. This bug crept in with the V40 border redraw
- optimizations. (40.29)
-
- - All non-essential Alert()s are now gone, to save space. (40.29)
-
- - Fixed a bug in AllocScreenBuffer() failure where it called
- FreeScreenBuffer() badly. (40.34)
-
- - Fixed a hole in UnlockPubScreen() where it could race with
- CloseScreen() and die with Enforcer hits. (40.34)
-
- - Holding a gadget down no longer blocks OpenWindow() from completing.
- (40.45)
-
- - frbuttonclass no longer crashes if the OM_NEW taglist includes
- GA_Width or GA_Height. (40.45)
-
- - Fixed a small window of vulnerability when ModifyIDCMP() connects
- the window's WindowPort. This could cause Enforcer hits if
- input.device got to run at the wrong time with respect to the
- client's call to ModifyIDCMP() or OpenWindow(). (40.47)
-
- - Fixed a bug where a non-draggable child screen could inadvertently
- be moved by the system if the active monitor changed. (40.65)
-
- - Miscellaneous housekeeping changes. (40.71)
-
- - OpenScreen() now fails if AttachPalExtra() fails. Otherwise,
- Enforcer hits and awful death may result. (40.85)
-
- - If sysiclass fails to allocate its TmpRas, it would fail to release
- the semaphore which protects class-data, locking out subsequent
- users. Fixed. (40.85)
-
-
- keymap 40.4
-
- - Bumped version to V40. (40.1)
-
- - Updated autodocs (40.4)
-
-
- layers 40.1
-
- - Bumped version to V40. (40.1)
-
- - Removed calls to Alert for the pathalogical startup cases. (40.1)
-
-
- mathffp 40.1
-
- - Removed the Expunge code. (39.1)
-
- - Bumped version to V40. (40.1)
-
-
- mathieeesingbas 40.4
-
- - Bumped version to V40. (40.1)
-
- - Removed the IO FPU support. (Since 68020 and up are really connected
- to the FPU there is no real need and almost no one makes a IO FPU
- anymore for the 68000 machines since it is cheaper to make a 68EC030
- plus real FPU and is *MUCH* faster). (40.1)
-
- - Removed the Expunge code since there is no real need for it. (40.3)
-
- - Miscellaneous changes. (40.4)
-
-
- ramlib 40.2
-
- - Bumped version to V40. (40.1)
-
- - Took out alerts that can not happen. (40.1)
-
- - Miscellaneous fixes. (40.2)
-
-
- rawinput 40.1
-
- - Bumped version to V40. (40.1)
-
- - Miscellaneous fixes. (40.1)
-
-
- scsidisk 40.8
-
- - Bumped version to V40. (40.1)
-
- - Never uses IDE reads of more than 128 blocks. (40.1)
-
- - Removes a "romboot.device" string that was meaningless (and
- has been in there since the A590). (40.1)
-
- - Bumped version to V40. (40.1)
-
- - Uses the new exec Gayle check code for A1200/A600. (40.3)
-
- - Some CDROM drives do not generate a media-changed error on the
- first media insertion after reset, but just go from not-ready to
- ready. The SCSI driver was counting on those errors to notice
- disk changes. Modified scsidisk to notice that we've quietly
- gone not-ready to ready and notify everyone as appropriate. (40.4)
-
- - Bumped the constant for IDE timeout from 9 seconds to 15 seconds.
- This is to allow for slower spin-up drives such as the new
- Seagates. (40.5)
-
- - Some timeouts were changed for greater future compatibility on
- IDE systems. (40.7)
-
- - A new entry in the error table was added for reporting media changes
- (in particular for supporting Syquest IDE drives). (40.7)
-
- - Some other minor changes to the startup code were added, including
- things like returning real errors instead of -1 in several cases,
- and sending StartUnit to devices that haven't spun up (very good
- for some CDROMs and disk drives which default to not spinning up).
-
- There's now some dead code in the A4000 IDE handling, but it doesn't
- hurt anything (it plays with a battmem bit it now ignores). (40.7)
-
- - Restored a line of source code that got deleted by mistake in the
- 40.7 changes. (40.8)
-
-
- shell 40.2
-
- - Removed support for "Hold" bit and for 1.3-style redirection (set
- oldredirect on) for space reasons. (40.1)
-
- - Miscellaneous changes.
-
-
- strap 40.1
-
- - Miscellaneous fixes. (40.1)
-
-
- trackdisk 40.1
-
- - Bumped version to V40. (40.1)
-
- - Miscellaneous fixes. (40.1)
-
-
- utility 40.1
-
- - Bumped version to V40. (40.1)
-
- - There are now two distinct versions of the library generated. One for
- 68000 systems, and one for 68020 and above systems. The 68020-only
- version is 316 bytes smaller than the 68000 version. The 68020 version
- is meant for use in the A1200, A3000, and A4000 ROMs. The A1200 is
- currently our smallest ROM, so this extra space will help. (40.1)
-
-
- wb 40.5
-
- - Adjusted the sizes of the OK/CANCEL and SAVE/CANCEL gadgets in the
- Workbench requesters to match the new font+6 height values. This
- makes for better gadgets on high-resolution displays such as the
- 800x600 modes and also matches the new V39 prefs editors. (39.51)
-
- - Fixed a long standing bug that was just found: The system would crash
- (sometimes) or cause Enforcer hits if files were deleted within
- a drawer that was also selected for deletion. This one has
- a fundamental flaw in Workbench which had to be patched with some
- rather tricky organization of tests... (39.52)
-
- - Cleaned up the Rename requester such that the user can not type in
- the ":" or "/" characters rather than waiting until later to check
- for them. (String hook) (39.54)
-
- - Bumped version to V40. (40.1)
-
- - Workbench is now 100% font sensitive! This means that the
- information requester is now font sensitive and does complete
- layout and fall-back as needed. (40.1)
-
- - Found and fixed the backdrop refresh on startup timing problem
- (it was a very interesting case of rendering the window before it
- was ready to listen to new Preferences). (40.1)
-
- - Information number displays are now all localized numbers.
- That is, they are %lU using GTNM_Format tag of V39. (40.1)
-
- - Fixed bug where physical devices would not show up any more. Now,
- once again, makes sure that the physical devices show up. (40.2)
-
- - Fixed: WBstartup app calling addAPPXXX can cause alert. (40.4)
-
- - Miscellaneous housekeeping changes. (40.5)
-
-
-