mailto: blog -at- heyrick -dot- eu

Who's four some Tea?

On this, the fourth day of the fourth month of the fourth twenty-year, say hello to the fourth incarnation of my Tea TV guide software.

Tea has undergone numerous changes to enhance the "user experience".

The first of these, and a biggie, is to get rid of lamely using the error message boxes to provide information. I have only just sorted out sound on my Pi 3B+ (the hdmi_drive setting was set to not send sound over HDMI even though it was commented that it would... duh... I think I had the older Pi hooked up via the headphone jack?).
Anyway, I hadn't quite realised how bloody annoying it was to have BEEP! (mine defaults to StringLib-Hard) every time that message box pops up.

Which meant that I had to kill off the channel and programme information...

...and do it properly.

This is the programme information. Note that it's now clearer what channel something is on, as well as giving the end time as well the duration.

Programme information
Oh, creepy kids. My favourite kind.

And here is the channel information complete with Freesat channel number and the channel ident.

Channel information
Dydw i ddim yn deall hyn.

Yes, that's a real language. ☺ Apparently it's said like "de doi deem andeya shen" (spacing to break up the word sounds, just say it without any pauses).
If it's wrong, blame Google.

The positions of the hour markers have been tweaked to better place the '|' more in line with where the hour change is (at least, if you're using the default Homerton font).

The routine to determine the age of files now correctly copes with leap years. Yes, I know it's too late (and since Tea was released at the end of March it wouldn't have mattered), plus this doesn't really change things much...
...but it's still pleasing to do it properly.
And by properly I mean if the year is ÷4 unless ÷100 unless ÷400. It seems unfortunately common to forget the last bits, which might become evident when the year 2100 rolls around. <troll>And, yes, seventy six years from now, RISC OS will still be 32 bit so my program will still work...assuming Freesat is even a thing and you can find a working Pi and µSD card in a vintage store and the internet is still a thing and hasn't been stymied by dystopian megalomaniacs and...</troll>

Tea will no longer freak out (as in metaphorically wet itself and die) if it cannot download programme data for a channel. The only time this is considered a critical error now is when trying to fetch the channel list (under the assumption that you're doing that because you don't have one). If the programmes cannot be retrieved, then the fetcher code will report "Timeout" and it'll move on to trying to fetch the next channel.
The ones it couldn't fetch? They'll have fake programmes inserted to say that the information could not be fetched, and you should choose whatever the current day is in the "When..." menu (click Menu on the big grid) in order to force recreating the grid, which will trigger trying to fetch any missing channel data.
Sometimes, if RISC OS is busy (often TaskWindow stuff) a fetch will just not work. I'm not sure if this is due to my using WiFi or if this is just RISC OS being RISC OS (or, maybe, TaskWindows being TaskWindows). Either way, it shouldn't be a show stopper. So now it isn't.

And what was the big TaskWindow program that caused everything to drag? Well, cppcheck which was used to cast a critical eye over the source. It found one instance of looking at an array with an indice of -1. That's a magic value used to mean "we're all done here", which was later used in the context of "if something[indice] is zero then set indice to -1", and you can see that it wasn't quite correct if indice was already set to -1. In effect, it wouldn't have made any real difference. The -1 read would have just picked a different word out of the local variables on the stack, compared with zero, and since the indice was already -1 it wouldn't matter if the test matched and it was set to -1 again. If the test failed, nothing was done so indice would have remained as -1.
The code is now "if indice isn't -1 then..." followed by the original test. It's just nicer like that, isn't it?

Tea is now available on Store, but you can grab a copy here:

Download tea_0-04.zip (358.51K)
For RISC OS machines.

 

 

Your comments:

Please note that while I check this page every so often, I am not able to control what users write; therefore I disclaim all liability for unpleasant and/or infringing and/or defamatory material. Undesired content will be removed as soon as it is noticed. By leaving a comment, you agree not to post material that is illegal or in bad taste, and you should be aware that the time and your IP address are both recorded, should it be necessary to find out who you are. Oh, and don't bother trying to inline HTML. I'm not that stupid! ☺ ADDING COMMENTS DOES NOT WORK IF READING TRANSLATED VERSIONS.
 
You can now follow comment additions with the comment RSS feed. This is distinct from the b.log RSS feed, so you can subscribe to one or both as you wish.

jgh, 7th April 2024, 12:56
(smallcaps)...the human race suddenly encountered a threat to its very existance(/smallcaps) 
 
:)

Add a comment (v0.11) [help?] . . . try the comment feed!
Your name
Your email (optional)
Validation Are you real? Please type 67791 backwards.
Your comment
French flagSpanish flagJapanese flag
Calendar
«   April 2024   
MonTueWedThuFriSatSun
12356
89111213
15171819
2224252627
2930     

(Felicity? Marte? Find out!)

Last 5 entries

List all b.log entries

Return to the site index

Geekery

Search

Search Rick's b.log!

PS: Don't try to be clever.
It's a simple substring match.

Etc...

Last read at 22:25 on 2024/04/29.

QR code


Valid HTML 4.01 Transitional
Valid CSS
Valid RSS 2.0

 

© 2024 Rick Murray
This web page is licenced for your personal, private, non-commercial use only. No automated processing by advertising systems is permitted.
RIPA notice: No consent is given for interception of page transmission.

 

Have you noticed the watermarks on pictures?
Next entry - 2024/04/07
Return to top of page