amiga-ixemul/changelog.txt

479 lines
19 KiB
Plaintext
Raw Permalink Blame History

2009-11-29 Bernd_afa
Version 63.1
* I find functions that are not in MOS ixemul but in the 48.3 fork from megacz
and i add them now in this ixemul
realpath
inet_ntop
inet_pton
gai_strerror
freeaddrinfo
getaddrinfo
getnameinfo
* Add ix_UseAmigaPaths(mode) func.
When mode = 1 then amiga Path Mode is used.
For example when current dir is sys:wbstartup
ix_UseAmigaPaths(1);
h = fopen("/tools.info","r");
work
* Add C99 funcs
hypot
exp2
exp2f
log10f
expf
* revert change from jDc in __write.c to V48 because some programs do not correct line feeds in Shell Output(gdb ) with new Code
and for what the new Code is need i dont know
Add dummy libm.a that come in lib dir.It help some
configure scripts that want link with libm to detect
available math functions correct.
2009-09-01 Bernd_afa
Version 62.1
fix a problem when more child threads use network access
(fix Internet stream play with ffplay without source changes)
Linux return a address when call malloc(0), so there are some programs out
(all that use milkshape loaders) that fail if
this is not do.now ixemul return too a address and this programs work.
when there is no HOME enviroment var in your env dirs, then ./ is return from getenv.
before it return 0 and this let some programs crash, or do no prefs save.
This make complete remove of programs more easy and is amiga like.
So there is no problem that HOME dir grow lots by saving all config files in 1 dir
and fit better in amiga enviroment.
If you dont like that config files are store in current dir and that it is called as HOME,
then create a env var HOME with path to dir you want.
2009-07-11 Diegocr
* Added the task's blacklisting features to the buddy allocator.
* Improved poolmem to be somewhat faster...
* Removed a Forbid/Permit pair around malloc's b_alloc() call which
does not seem to be needed.. (buddy allocator)
* Memory's Pool and Semaphore are created regardless of the allocator
being used, but not freed on exit when using the buddy way - Fixed.
2009-07-01 Bernd_afa
* fixed a filesystem Bug introduce from MOS Version for programs that use AHI output (fopen("audio:..")).
* sound is now play correct
* use now old buddy allocator again, because netsurf need very good memperformance
but poolmem system do after some netsurf use lots slowdown (more than 3) because of mem fragmentation in
poolmem.For using memtrackers, there is a poolmem version attached, named ixemul.library_poolmem.
2009-05-29 Diegocr
* Updated IXPrefs to Version 2.8
- Added options which control how malloc() should react when
running out of memory.
- Added a button which launches a external program to the
Task's Blacklisting management, it's currently made using MUI,
and loaded from SYS:Prefs/ixbl_MUI (either via WBRun if it's
found, or falling back to 'C:Run <>NIL:')
* library/hwck.c
library/ix_blacklist.c (new)
library/ix_settings.c
library/ixemul.h
library/ixprotos.h
library/malloc.c: Implemented task's blacklisting features.
Certain options can be configured globally (from ixprefs) or
per-task (from ixbl_MUI), When a global option is enabled but
the same option over a blacklisted task is disabled, the later
is taking into account. Same if you disable a global option and
it's enabled over a blacklisted task.
Those options should be intuitive and easy to use. However, you'll
find additional info on the buble-helps from the ixbl_MUI program.
2009-05-25 Diegocr
Version 61.2
* library/malloc.c: Poolmem allocation system now uses Semaphores
rather than Forbid/Permit..
* library/ix_open_68k.c: the memory pool was created without
checking if the allocation failed or not - Fixed.
2009-05-13 Bernd_afa
Version 61.1
*
* add func log2 log2f lrint lrintf to math.h
* add func strtok_r to string.h
* add func sqrtf/fmod to libc.
* mmap use now page size alligned memory that is need by programs(GCC) to work ok
* correct handling for extern inline in C99 Mode see http://gcc.gnu.org/ml/gcc/2007-03/msg01096.html
* additional poolmem memsystem add.this let bugs find more easy because AOS memtracker work.
POOLMEM define in malloc.c can switch between them.
* ix_CreateChildData function add in libc.a.This create correct Userdata structure ixemul need
to store filehandles and used memlist of current task when a task is create with amiga OS create Task.
change to follow Unix spec(not used in vfork process)
child tasks use mem list from parent task.
child tasks use same file handle as parent task
need by many Unix programs that create tasks with SDL.
this function is 100% compatible to old because only programs that use ix_CreateChildData
set u_parent_userdata != 0 and so new code is active.
* Bugfix: llock get now correct aligned mem for packet call.(wget resume work again)
* because most Linux programs do not check if enough memory is here and to avoid them crash badly after a failed malloc
a check is add if memory cant allocate.
then a requester come that show how many mem need, and the user can free memory on other programs
and can then click on try again.
2009-02-06 Bernd_afa
* lseek return now correct value when whence is not support (ffmpeg need this)
* show the correct stack usage when run cli program ixstack -s and in ixprefs show stack usage is on
fill not the stack with cookie values if stack pointer is not in bound of sp_lower sp_upper
there seem some programs out, that change stack and dont set stack bounds correct.
* the requester wrong ixnet is now too show when program start from workbench by moving wbstartup
message code on same place as MOS on ix_open
2009-01-29 Diegocr
* a couple math#?.(c|h) fixes, updated math-68881.h, etc...
2009-01-27 Bernd_afa
* fix old Bug that when ixstack envvar is set the stack for the vfork process was always limit
to ixstack size.Now if the caller process of vfork have more stack, then this stacksize is used
* change of the c99 funcs to use static inline in math.h
* the have_xxx defines are now disable by default(need only enable on GCC build)
* if no int __stack variable is set in program a default stacksize from the envvar ixstack is use.
if no envarc:ixstack env var is find, the minimum stacksize is set to 512000 bytes.
If on shell or Icon more stack than the minimum is set, then this stack size is use.
Sound large, but Unix/Linux programs need lot stack.the value of 512 kb is a praxis value,
because i find no program currently that use more stack than 400 kb.but dont think 512 kb is far enough.
The cygwin Unix API give Unix/Linux tasks 2 MB of stack and also windows programs get on default
2,5 MB of stack.So if you have lots of ram and you want be on the safe side better set ixstack to 2000000
If you are low on amiga mem, you can lower the stack value upto 16384 same value as ixemul 48 or 49.
BUT BE SURE ALWAYS look how much stack a program need.there are not much programs out, that work with this
low stacksize correct.So you need carefully set the values in shell-startup or Icons by yourself to
usefull values
* a env variable IXENVARC add, if set then ixemul read first the env varibles on dir
envarc.This "Hack" help easy to get ixemul working when envhandler or happyenv is sued.
Limits: when you create a new env variable only in env and not in envarc then this is not
notice.So rule is, use always global env variables.
* bump revision to 50.0 use V48 signal handling, and MOS V49 additional functions
because on V49 Ports for 68k vfork, OWB, CTRL+c, end on stackoverflow
dont work with the new MOS signalhandling on 68k.
Use of seperate files with ending _68k and modified makefile so should not break MOS build
*
* updatet include files to help more programs easy porting
* added atan2 strtoll
* assert use the in newer GCC obsolete eeprintf func not.
* faster file access thru 16 kb buffer, gcc compile 40-50% faster
* compile too with crosscompilers, because the generatet files are now
not need.The file ix_internals_backup.h contain this infos now.So you can change
here.
WARNING: if you use this source and change lots in ixemul.h or user.h struct ,
better run the program library/68060/68881/Create_header that is build always new
on amigaos and verify if all offsets are correct in the ix_internals_backup.h files.
* add atoll func to stdlib.h
* add many C99 functions to math.h to get more programs working without changes
2008-08-15 Harry Sintonen <sintonen.[at].iki.fi>
* Fixed a race condition in global environment (ENV:) scanning.
* Bumped version to 49.26.
2007-03-19 Harry Sintonen <sintonen.[at].iki.fi>
* Fixed a silly bug in the "Ram Disk:" to "RAM:" conversion.
* Fixed __load_seg for root directory (/).
2007-02-19 Harry Sintonen <sintonen.[at].iki.fi>
* Internally convert any occurence of "Ram Disk:" to "RAM:". This
workarounds some b0rken configure scripts.
* Bumped version to 49.25.
2007-01-28 Harry Sintonen <sintonen.[at].iki.fi>
* MorphOS: Fixed startup-code local ix_panic varargs.
* __ix_wb_parse: Free temporary memory allocated for the WINDOW
tooltype.
2007-01-12 Harry Sintonen <sintonen.[at].iki.fi>
* Fixed widechar _ctype_ accesses (Marcin Kurek).
2006-11-19 Harry Sintonen <sintonen.[at].iki.fi>
* Fixed to restore tc_UserData at ix_close.
* Bumped version to 49.24.
2006-11-01 Harry Sintonen <sintonen.[at].iki.fi>
* Fixed ixemul and ixnet library open to check for AllocSignal()
failures.
* Disabled SetExcept() optimization until GDB issue is sorted out.
2006-08-20 Harry Sintonen <sintonen.[at].iki.fi>
* Fixed getpagesize() to return the actual page size.
* Adjusted MorphOS ix_flush*() cache routines to invalidate/flush
m68k (JIT) cache aswell as PPC. This way m68k ixemul apps won't
break at least. No big deal, as far as I can tell these functions
are pretty much unused.
2006-08-16 Harry Sintonen <sintonen.[at].iki.fi>
* Fixed vfork() PPCSPLower & PPCSPUpper alignment.
* Fixed execve() atexit-handler calling to make sure stdio
file descriptors can't be close()d.
* Bumped version to 49.23.
2006-04-05 Harry Sintonen <sintonen.[at].iki.fi>
* Fixed pw_class to be "default" instead of NULL. NULL value made
ssh barf (strlen(NULL)).
* Fixed AS225/INet225 pw_change to be time(NULL), not -1.
* Bumped version to 49.22.
2006-03-11 Harry Sintonen <sintonen.[at].iki.fi>
* Now clears possibly pending CTRL-E and CTRL-F signals.
2006-03-10 Harry Sintonen <sintonen.[at].iki.fi>
* Limited the SetExcept sigmask to ixemul allocated signals only.
User allocated signals no longer cause exceptions (device I/O,
or anything else using user signals directly/indirectly).
2006-02-15 Harry Sintonen <sintonen.[at].iki.fi>
* Fixed all printf family functions not to parse the format string
as multibyte.
* Bumped version to 49.21.
2006-02-09 Harry Sintonen <sintonen.[at].iki.fi>
* Fixed getfsstat(), fstatfs() and statfs() to LockDosList()/
NextDosList()/UnLockDosList() the doslist properly instead of
Forbid() and direct list scanning.
* Fixed getfsstat(), fstatfs() and statfs() to make sure the device
process hasn't disappeared before sending a dospacket.
* Removed use of custom __Close function, use dos Close instead.
2005-10-29 Mark Olsen <bigfoot.[at].private.dk>
* Mapped /dev/zero to zero: in __open.c
2005-10-25 Harry Sintonen <sintonen.[at].iki.fi>
* Fixed ix_to_ados with foo:./[///]bar and foo:/[///]bar. Some stuff
appears to depend on this. Note that foo:../bar etc still works
different to original routine. If something depends on that
particular feature of the original routine, we're screwed.
* Added ftruncate() seek workaround for buggy filesystems (FFS2).
* Bumped version to 49.20.
2005-06-26 Harry Sintonen <sintonen.[at].iki.fi>
* Rewrote ix_to_ados path conversion routine, it was way too hairy
and buggy (for example .// and ..// were interpreted wrong). Now
it's a simple state-engine with exception for ix and abs-ados
path concatenation (needed by ksh cd for example). Also, it no
longer tries to optimize away parent elements in the path, as
this could have led into problems with softlinks.
2005-06-14 Jacek Piszczek <jacadcaps.[at].poczta.onet.pl>
* Tweaked termios defaults to match those used on linux, enabled
ISIG, stdin has output flags set as well as stdout now
2005-05-25 Jacek Piszczek <jacadcaps.[at].poczta.onet.pl>
* Fixed \n filter when IXTTY_ONLCR is disabled (uses INDEX now).
* Added IXTTY_SPECIAL for sshconsole
2005-04-20 Harry Sintonen <sintonen.[at].iki.fi>
* Disabled CTRL-F -> SIGWINCH translation code, it isn't used by
anything anyway. It also broke ahi.device from ixemul apps.
There's still the Ixemul semaphore to send signals from outside
of ixemul.
* Fixed setnetent()/endnetent()/getnetent() to be reentrant.
* Fixed AS255 68k vsyslog() to actually print to the log instead
of stdout.
* Fixed vsyslog()/AS225 68k vsyslog() to be reentrant.
* Fixed getpass() to be reentrant.
* MorphOS: Removed EmulCall68k in favor of EmulCallDirect68k.
* Updated inet_network() to 1993 edition.
* Fixed getnetent() wrong n_net value and alias parsing.
* Fixed fread LARGEREADS: It didn't handle writes or ungetc before
large read.
* Rootdir (/) emulation lists assigns now, too. [Pavel Fedin]
* Bumped version to 49.19.
2005-03-02 Harry Sintonen <sintonen.[at].iki.fi>
* ixnet: fixed h_errno variable, it was never set before.
* Bumped version to 49.18.
2005-02-18 Jacek Piszczek <jacadcaps.[at].poczta.onet.pl>
* Added a possibility to disable IXTTY_ONLCR.
* Added a \n to ^D filter when IXTTY_ONLCR is disabled.
* TIOCSET* functions applied to stdin update stdout, etc to
fix some compatibility issues.
* Bumped version to 49.17.
2005-02-16 Harry Sintonen <sintonen.[at].iki.fi>
* Fixed snprintf/vsnprintf(p,0,...) wrong return value. Both
functions would always return -1 instead of the number of
characters that would have been written (not counting \0).
* Bumped version to 49.16.
2005-01-14 David Gerber <zapek.[at].morphos.net>
* Fixed scandir() to return proper file types.
2005-01-05 Emmanuel Lesueur <lesueur.[at].club-internet.fr>
* Added a way to send unix signals to an ixemul process from a non
ixemul process.
* Bumped version to 49.15.
2004-10-04 Harry Sintonen <sintonen.[at].iki.fi>
* nmap returned NULL instead of -1 for error in one case (report
by jorge).
2004-08-28 Harry Sintonen <sintonen.[at].iki.fi>
* ixemul/ixnet LIB_Expunge: Don't reference already freed memory.
* Bumped version to 49.14.
2004-07-05 Harry Sintonen <sintonen.[at].iki.fi>
* Removed the global max file limit of 512. Currently the close()d
filenodes don't get released, but are cached for reuse.
* Bumped version to 49.13.
2004-06-17 Harry Sintonen <sintonen.[at].iki.fi>
* Fixed ix_create_extio wrong message node type.
2004-04-02 Emmanuel Lesueur <lesueur.[at].club-internet.fr>
* Altivec stack alignment fixes.
* Bumped version to 49.12.
2004-03-18 Sigbj<62>rn Skj<6B>ret <cisc.[at].broadpark.no>
* Fixed ENV: notification, you can actually use global envvars now.
2003-12-27 Harry Sintonen <sintonen.[at].iki.fi>
* Optimized bcopy(), bzero() and memset().
* Fixed bzero() trashing whole memory if called with odd
address and 0 len.
* Bumped version to 49.11.
2003-12-12 Harry Sintonen <sintonen.[at].iki.fi>
* Fixed uname() to return sensible values under MorphOS.
* No longer relies on shared math libraries under MorphOS.
* Bumped version to 49.10.
2003-10-15 Emmanuel Lesueur <lesueur.[at].club-internet.fr>
* Fixed chdir("/") so that mkdir -p /ram/foo/bar works.
* Bumped version to 49.9.
2003-08-24 Mark Olsen <bigfoot.[at].private.dk>
* file fds no longer set exc fdset in select because there is data
to read.
2003-08-17 David Gerber <zapek.[at].morphos.net>
* Added direct mapping of /dev/(random|urandom|srandom|prandom) to
the RANDOM: device.
* Bumped version to 49.8.
2003-08-06 Harry Sintonen <sintonen.[at].iki.fi>
* Fixed getcwd() off-by-one buffer overflow if ix_translate_slash
was enabled.
* Fixed getcwd() buffer overflows with buffer size of 1.
* Fixed getcwd() errno in error cases.
* Bumped version to 49.7.
2003-07-19 Harry Sintonen <sintonen.[at].iki.fi>
* Fixed open() not seeking to file end for O_APPEND.
* Bumped version to 49.6.
2003-07-17 Harry Sintonen <sintonen.[at].iki.fi>
* Fixed lstat() entering forever loop if called for multiassign
where the first assign doesn't match.
* Bumped version to 49.5.
2003-07-15 Harry Sintonen <sintonen.[at].iki.fi>
* Fixed ftruncate() and truncate() wrong return value for success.
* Bumped version to 49.4.
2003-07-07 Harry Sintonen <sintonen.[at].iki.fi>
* Fixed getwd() and getcwd() to prefer NameFromLock() of
pr_CurrentDir over buffersize limited GetCurrentDirName().
* Bumped version to 49.3.
2002-11-30 David Gerber <zapek.[at].morphos.net>
* Removed "Physical blocks build one logical block (for stdio)"
option which is computed automatically depending on device
blocksize now.
2001-06-01 Emmanuel Lesueur <lesueur.[at].club-internet.fr>
* Adapted the signal handling process to the new MorphOS
scheduler. It seems to have fixed the CTRL-C crashes.
* Bumped version to 49.2.
2001-03-28 Emmanuel Lesueur <lesueur.[at].club-internet.fr>
* Fixed math functions for MorphOS
2000-10-21 Emmanuel Lesueur <lesueur.[at].club-internet.fr>
* Implemented cache manipulation functions, besides flush_cache().
* Fixed problems with executing non-ixemul programs.
* Bumped version to 49.1.
2000-10-04 Emmanuel Lesueur <lesueur.[at].club-internet.fr>
* Fixed various problems with 68k ixemul programs
* Completed support for 68k stack management
* Improved configure/make
* Fixed some includes bugs
* Added support for ctors/dtors in crt0.o
* Added the missing _err/_warn
* Compiled the ixpipe: handler and some tools
2000-09-17 Emmanuel Lesueur <lesueur.[at].club-internet.fr>
* fixed wb startup problems.
* fixed problem with stack extension of 68k program
2000-08-30 Emmanuel Lesueur <lesueur.[at].club-internet.fr>
* fixed siglongjmp()
* fixed a race condition in wait4()
2000-06-20 Emmanuel Lesueur <lesueur.[at].club-internet.fr>
* Added MorphOS support.
* bumped version from 48.1 to 49.0.
2000-05-07 Emmanuel Lesueur <lesueur.[at].club-internet.fr>
* replaced the signal handling by one based on exceptions.
1999-07-12 David Zaroski <zaroski.[at].cronus.ninemoons.com>
* (library/lseek.c): fix error reporting in __extend_file()
1999-06-13 Fred Fish <fnf.[at].ninemoons.com>
* version.in: Bump development version from 48.0 to 48.1 and
update the date fields.
1999-03-06 David Zaroski <zaroski.[at].cronus.ninemoons.com>
* (configure.in): add support for cross compiling
* (Makefile.in) : ditto
* (man/Makefile.in): fix man page generation
* Regenerate configure
Sat May 23 23:53:18 1998 Fred Fish <fnf.[at].ninemoons.com>
* Makefile.in (OS): Remove pos from default list of operating systems
to build for.
1998-03-25 Fred Fish <fnf.[at].ninemoons.com>
* ChangeLog: New file
* Makefile.in (CPU-FPU-TYPES): Add 68060.68881