I'm with 4. You don't need a clock next to a timer, unless you are too stupid to understand, that it is a timer. And I love these round icons.
I say 4, since it looks more like the actual Heroes HUD and I like the round icons. Coincidentally in my Sonic 1 hack I currently have the timer and rings the same way 4 has, and even the score too to make it more Adventure 2 like XD
4. It's more like the original Sonic Heroes HUD, plus it has a timer long enough to be useful for speedruns and no useless timer icon. :P
I vote for 4 since I think that the round icons reflect Sonic Heroes better, and the clock icon is kind of unnecessary in my opinion.
Why bottom? Makes more sense to me that it would be on top. It was on bottom in Heroes, but that's because that part of the GUI was on the top of the screen.
So far, the score tally is this: Code (Text): HUD Count #1 1 #2 3 #3 1 #4 16 Shadic's 2 The clear winner is HUD #4. Shadic's idea is sadly hard to implement; rotating the icons will require loads of graphics for each step of the way, whereas the round and square icons only need adjustments in position. And while the mini score text looks interesting (and even possible to increase in width by another 4 pixels without increasing tile count), it will look out of place without the clock. So, now I have some new polls: First is a simple yes/no question: should I use these Super Sonic life icons? These are based off of the Super Sonic life icon from a Cylent Nite Super Sonic sheet. And yes, the eyes are green. Second is more involved: which of the following variations of the basic HUD would work best? I prefer the more compact layout from rows 3 and 4; and I prefer the columns with milliseconds for the timer (B, D, F, H, I, J). The ones I like the most are B3, D3, I4 and J4, with J4 being the closest to the original Heroes HUD. But I can't decide which one. (and yes, adding the one extra digit to score for columns I and J is easy). For the ASM heads out there that are thinking of implementing the, or have already implemented a, millisecond-accurate timer, here is a neat trick for you. If you used the (naïve) approach: Code (ASM): ; Naïve approach moveq #0,d1 move.b (Timer_frame).w,d1 ; Load timer frames mulu.w #1000,d1 ; *** Multiply by 1000 for millisecond resolution divu.w #60,d1 ; *** Divide by 60 to map the result to [0-999] interval then there is a faster way to do it. The code marked with *** takes 198 clock pulses over 6 read cycles. Using the magic constant $10AE82, this can be done much faster without a division. Because the m68000 does not allow multiplication of 2 32-bit numbers, this has to be broken up into a multiply by $AE82 and another by $10 shifted one word up. The final code is this: Code (ASM): ; Using magic numbers moveq #0,d1 move.b (Timer_frame).w,d1 ; Load timer frames move.w d1,d2 ; *** Copy timer frames asl.w #4,d2 ; *** This is a part of the high word mulu.w #$AE82,d1 ; *** Magic constant swap d1 ; *** Divide by 2^16 add.w d2,d1 ; *** And now d1 = int(Timer_frame * 1000 / 60) andi.l #$FFFF,d1 ; *** Clear high word, needed for standard HUD rountines The code marked *** takes 100 clock pulses over 10 read cycles; this means it is just about twice as fast, despite being longer. Edit: Moreover, the magic constant $42B is even better for the range of interest (0-59), resulting in the following code: Code (ASM): moveq #0,d1 move.b (Timer_frame).w,d1 ; Load timer frames mulu.w #$42B,d1 ; *** Magic constant lsr.w #6,d1 ; *** And now d1 = int(Timer_frame * 1000 / 60) which clocks at 70 clock pulses over 3 read cycles for the code marked with ***. Edit: Should have been lsr instead of asr in the last code box. Fixed.
I3, I4, J3, J4... I can't decide either =/ I won't bore you by explaining my reasons so I'll just pick J3. I do think you should add the black outline to the gray zeros like the rest of the golden numbers. They look off without it. Yes, use the super icon, please.
I prefer the equal vertical spacing of rows 1 and 2, and the right alignment of columns A, B, E, F, and I. Not a big fan of the blue leading zeroes, I think they'd look better left out, or the same color as the rest of the numbers.