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

Re: STiNG, CAB, and Multitasking (strikes back)



Hi,

>- if all MiNT vectors would be installed at the end of XBRA chain,
>wouldn't it have the same effect as loading MiNT as the first program in
>the AUTO folder?

Most probably yes.

>- therefore, wouldn't it cause a lot of compatibility problems as we
>  have now with programs, those can't be installed after MiNT (HSMODEM for
>  example), because position of MiNT in the AUTO wouldn't matter anymore
>  being virtually the very first one?

yep.

>Now, the other question is what the STiNG needs the privilege violation
>exception vector for. As I understood from Peter's mails and referred it
>once here, STiNG uses this vector to switch from user to supervisor mode.
>OK, I can agree on everything Peter says, but I can't agree that using
>or #0,sr and own exception handler is a _LEGAL_ way to switch the code to
>supervisor mode (out of the control of the kernel, but that's another
>question - i hope STiNG won't be used in multiuser setups). Peter claims
>using Atari-approved programming methods as legal - so at this point I
>don't think it is legal.

I believe it's a dirty programming trick which is causing more troubles than
Peter ever wanted.  I would suggest Peter to rewrite STiNG  and use Super(),
Supexec() or one of the unassigned TRAP vectors. Using LineA or LineF
instruction would not be good (but still possible if STiNG was started after
MiNT), and (mis)using a privilege instruction is definitely a hack.

>Being back to the question of XBRA chain, I think, that the current MiNT
>behaviour is probably not perfect, but the best in current circumstances.
>Yes, MiNT installs its handlers arbitrarily at the begin of the chain, but
>it is at least user-tunable by the AUTO folder sorting (yes, this has also
>some advantages!). If MiNT would install its vectors always just after
>TOS, we couldn't tune anything by resorting the AUTO folder.

Konrad, I agree with you completely.

BTW, I may add one thing to the subject: sorting AUTO folder programs. On
68040 CPU's we need a FPU emulation package. If it's started before MiNT, it
simply doesn't work. Do you think I rewrote MiNT to get the 68882 emulator
working? No, I just put 68882.PRG after MiNT in my AUTO folder. It's always
easier to tell people "put my program after MiNT" than "in order to get my
program running you need to get a special version of MiNT 1.xx".

Peter, if your users have problems with proper sorting of AUTO folder
programs, try to tell them to put the following line into MINT.CNF:

exec C:\AUTO\STING.PRX

The renaming is then done by XBOOT or similar boot manager.

Petr