Why not hijack only a couple of bits from the plays counter - given its a 16 or 32 bit int, its unlikely the upper most bits are ever going to be used - there isn't enough time left in your life to play even the shortest track 2^31 times

Reason: minimum song length is 6 or so seconds or plays count won't update, so (2^31 * 6) / (3600 / 24 / 365.25) = number of years of continuous plays a 32 bit int play counter allows. A 16 bit number will only allow 54 or so hours of continous plays before it overflows though. 32 bit value is a lot of years [over 100] and NO one oculd play the same long that long - your Empeg would have died due to power supply failure, hard disk cable, malfunction or lack of lubrication in the hard disks bearings long before then.


Anyway, if we used a couple or even 3 or 4 bits from plays counter as a "mark type", then whenever you marked the track, the marked flag is set, AND those bits on the plays counter are set to the "mark type" you selected from the [Hijack implemented] pop-up mark menu that appears whenever it detects the mark button is pressed, before it lets the player see the mark button code, you have to respond to the pop-up Mark type menu - and if you go cancel, hijack eats the button code to stop the player getting it].

And Yes - Non-empeg folks can read and write the dynamic data partition - they're doing it now - check other posts on this BBS for code on how to do it.
All you'd do is AND the current Play counter with the "mark reason code" bit mask, to get the porevious reason code if there was, one then replace it with the new reason code and update the plays counter on disk. Done.

Now worst case, this trick will make your plays counter quite a large number once you mark a track [with a (non-std) Mark code, but I'm betting that the guys made the plays counter only show the bottom few e.g. 4? digits of the number, so to all intents and purposes your play counter would stay the same *on-screen*. Or worst case, you turn the plays counter off.

Now, back at home, you can attach to the Empeg and using Emplode or Jemplode, can see all the marked tracks AND the marked types in the huge play counts.

Wouldn't take too much magic in Jemplode to turn those play counts in Marked reason codes either so you could sort the display by Reason code value etc.