[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.

Claus Brod, MDD, HP Boeblingen      Magic is real unless declared integer.
--#include <std_disclaimer>-----------------------------------------------