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

Re: [MiNT] update:WRITE_BOOT,ALLOW_TRP_CHG



2012/10/4 Helmut Karlowski <helmut.karlowski@ish.de>:
> Peter Persson, 04.10.2012 13:09:05:
>
>
>> Personally, I think it would be great if ALLOW_TRP_CHG just did what
>
>
> Currently all Setexc are blocked. Of course it can be changed, but only if
> there is another reason to do so.

It is also used to access the GEM system vectors etc. I don't know how
"clean" this is nowadays, but it's probably the "cleanest" way to
install a VBL timer service.

> I also think it would be nice to have this. Maybe the kernel could offer it?
> But that's another area.

Kernel and/or AES. It is useful both for full screen applications and
for windowed applications.

> Serious games??? :-)

Personally I've encountered the problem when I ported several
emulators to the CT60 (SMS+, x128, ColEM, fMSX, Frodo and others). I
ported them because of the lack of games :) But there is stuff like
Quake & Doom, for example.

> Guess it's not so easy, don't know if the XBRA-chain offers enough
> information to identify the owner of an address, but go ahead, I'm no expert
> on this ;)

Me neither. XBRA offers the next address in the vector chain + a 4
byte ASCII name of the app. The problem with it is that it is still up
to the coder to traverse the vector chain when removing your trap
patch, and generally people tend to forget that part.

>> I know Odd Skancke had some ideas for make/break keyboard codes
>> through evnt_mult()/evnt_keyboard(), but it was never implemented. So
>> right now, the only way to achieve that is to do something nasty.
>
>
> Suggestions welcome!

I think there are, or used to be, some dead/commented-out code for
this. At least I've seen some document in the CVS which describes
parts of a possible implementation, don't know if it's in source or
txt form though. Maybe it has been removed.

It would be extremely neat to have this on the AES level, since it
could enable windowed applications to detect multiple simultaneous
keypresses. I made it possible to run several of my emulator ports in
a window, but it sucks to use them since keyboard action becomes very
jerky and basically useless for that kind of application.

>> it sounds ilke - permit/reject access to trap vectors. Don't know if
>> it should take the VBR into consideration; probably not since it would
>
> VBL?

No, VBR. Vector Base Register. It determines the location of the trap
vectors in memory. On 68000, it's implicitly zero since there is no
VBR, but on 010+ it can be changed.

-- PeP