[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: mint-aware HD driver



> I don't think it's strictly necessary to re-implement GEMDOS right now -
> simply putting something like
>     Psemaphore(2,'GEMD',-1L) ;  /* request GEMDOS Semaphore */
> /before/ and something like
>     Psemaphore(3,'GEMD',-1L) ;  /* release GEMDOS Semaphore */
> /after/ any GEMDOS calls in tosfs.c should protect GEMDOS from any
> reentrant calls.

I was thinking exactly along these lines for a first test
implementation. I just didn't find the time to do that yet,
especially because I still have problems with MiNT 1.09
(it just seems to sit there and hang, i.e. no reaction to
mouse clicks anymore).

One thing that I am not sure about is how Pexec() fits into this
scheme.  MiNT calls the "native" Pexec(), and Pexec() itself
probably uses GEMDOS file system functions to load a file.  If
the "native" Pexec() calls the FS functions via the trap
mechanism, this should not be a problem, but what if it doesn't?
I guess I'll have to look into the kernel again to decide what to
do here, but including Pexec() calls into the semaphore scheme
above should be on the safe side.

--clausb@hpbeo79.bbn.hp.com-----------------------------------------------
Claus Brod, MDD, HP Boeblingen      Magic is real unless declared integer.
--#include <std_disclaimer>-----------------------------------------------