Click here to go to the forum index Click here for the home page
 
Author Message

<  MyStuff  ~  MyStuff K9 option "Merge back-to-back timers"

Page 1 of 1
freebird
Posted: Sat Apr 11, 2020 3:15 pm Reply with quote
Joined: 15 Aug 2007 Posts: 16
Hi

My archive has lost all reference to programs / episodes that are not first in individual back-to-back recording files i.e. a file containing episodes 1 to 4 only shows up as episode 1 in the archive. Using a hex editor, there's only one header info in the 'rec' file containing the 1st episode data so no possibility of a rescan using key 0 in the archive. A while back, I uploaded a program file from another toppy and used key 0 to rescan the archive - I'm wondering if this is what has lost the back-to-back entries. Unfortunately, this has gone unnoticed long enough so the data has rolled out of the MyStuff dat backups.

Whilst the actual 80+ episodes are all there in 30+ files, they weren't broadcast in order so makes it very difficult to watch them in chronological order.

I'm guessing that MyStuff stores bookmark positions for multi episode files in MyStuff_RecordedInfo.dat. Does anyone know what the full format of this dat file is (and any others involved)? As I know the order the episodes were broadcast in, with a bit of Perl and episode data, I should be able to reconstruct the archive entries.

Thanks in advance
Nige

_________________
Freebird's TAP Library
TF5800, TS On, F/W: 5.13.65 +MS6 recommended +ScUVZ
TAPs: TAP Commander 1.34; TitleRename 1.2; TimeShiftGuard 0.4; EIT Sub 0.6; EPG2MEI 0.96; SecCache (UK) 0.4; MyStuff 6.6;
TF5810, TS On, F/W: 5.15.09 +MS6 recommended +EzPfScUUuVyXpZ
TAPs: As TF5800 + MPDisplay V2.00
View user's profile Send private message Visit poster's website 5800 and 5810
Geoff Bacon
Posted: Sat Apr 11, 2020 4:34 pm Reply with quote
Frequent contributor Joined: 12 Jan 2007 Posts: 4559
Sounds as though your MyStuff_RecordedInfo.dat file has lost the entries for the programs.
Basically there is only one physical recording file and MS adds entries for the extra programmes in the merged recording.

Recovery really depends on how long ago this occurred. Every time MS starts, it makes a backup of it's data files in \ProgramFiles\Settings\MyStuff\Backups. So, the first thing to do is head there and look to see how many versions of the RecordedInfo file exist.

I suggest you copy the oldest one to your pc (that preserves a copy) and inspect it with a text editor (e.g. notepad). The missing entries will have .nn in the first field e.g. Channel 4_201912252228.01.mei|MEI8|3|...

Assuming you have entries like these, you need to identify the most recent version of the RecordedInfo file that has similar entries.
Shutdown MS and copy this file over \ProgramFiles\Settings\MyStuff\MyStuff_RecordedInfo.dat


While this will fix the file, it doesn't explain why the entries were missing. It is possible that you have suffered a file system corruption and MyStuff has rebuilt this file from the visible recordings. Suggest you run \Utilities\fsCheck and paste the log file into my fsCheck Reports thread.
Note: you can use TopManager |Display fsCheck to retrieve the log for pasting into the thread.

Should you find that you don't have an old file and you don't want to spend time trying to reconstitute the file, you could always send me the disk (my ToppyDiskMedic program should be able to locate a "deleted" backup copy of the file).

Geoff
PS: I'm assuming you are on MS 6.6 as shown in your forum signature

_________________
TopManager program
TF5800, TS On, F/W: MS6 Recommended F/W 12/9/2009 -Sy+EvEzPfUUuZ
TAPs: PcControl B1.4; StopExit v1.01; PruneEPG 1.0; fsSave 1.1; QuickJump 1.72; SecCache (UK) v0.4; EIT Sub (Game) v0.6; EPG2MEI v0.96; MyStuff 6.6; Bookmark 3.0; Extend v1.7; Font Manager 1.0d; MyInfo B5.6; MHEG On/Off A3;
Sig generated by EMJB's MyInfo.tap on 29/12/18
View user's profile Send private message Visit poster's website
freebird
Posted: Mon Apr 13, 2020 11:37 am Reply with quote
Joined: 15 Aug 2007 Posts: 16
Hi Geoff, thanks for the reply.

Geoff Bacon wrote:
Sounds as though your MyStuff_RecordedInfo.dat file has lost the entries for the programs.
Basically there is only one physical recording file and MS adds entries for the extra programmes in the merged recording.

I thought that's what I said "My archive has lost all reference to programs / episodes that are not first in individual back-to-back recording files".

Geoff Bacon wrote:
Recovery really depends on how long ago this occurred. Every time MS starts, it makes a backup of it's data files in \ProgramFiles\Settings\MyStuff\Backups. So, the first thing to do is head there and look to see how many versions of the RecordedInfo file exist.

Again, as I said "Unfortunately, this has gone unnoticed long enough so the data has rolled out of the MyStuff dat backups."

Anyway, I've sussed the format of RecordedInfo.dat and recreated all the the missing entries using a few lines of Perl code and episode data off 'tinternet.

As for the data loss in the first place, Her Indoors remembers that the 5810 got it's knickers in a right knot a few months ago but said she sorted it Laughing

_________________
Freebird's TAP Library
TF5800, TS On, F/W: 5.13.65 +MS6 recommended +ScUVZ
TAPs: TAP Commander 1.34; TitleRename 1.2; TimeShiftGuard 0.4; EIT Sub 0.6; EPG2MEI 0.96; SecCache (UK) 0.4; MyStuff 6.6;
TF5810, TS On, F/W: 5.15.09 +MS6 recommended +EzPfScUUuVyXpZ
TAPs: As TF5800 + MPDisplay V2.00
View user's profile Send private message Visit poster's website 5800 and 5810
Geoff Bacon
Posted: Mon Apr 13, 2020 1:39 pm Reply with quote
Frequent contributor Joined: 12 Jan 2007 Posts: 4559
At least you are sorted now.

One thing I did think about is that you are manipulating the MyStuff_RecordedInfo.dat file during startup and this could potentially have caused the loss of the data e.g. a race condition if your TitleRename tap is rewriting the file as MS tries to access it.

Strictly speaking, this shouldn't happen as the toppy uses a cooperative scheduling system whereby a tap keeps running until it says someone else can have a go (unlike Windows which is interrupt driven). So it really depends on whether or not you are releasing control in the tap and what you are doing around it.

Ideally, you want the tap to run as fast as it can (but your web page says it exits after 30 secs so it must be giving control to other taps.). Ideally, if you can get it to run "quick enough", you could do all the work in the initialisation code and exit immediately. Alternatively, allow other taps to run and then, when your tap runs again, run to completion.

If you want to experiment, copy your Recorded Info file into another file on the pc and duplicate the file several times to make it large e.g. 4000 lines. Modify a test tap to access this file and calculate, in code, how many milliseconds it takes to execute. If it takes less than 10 ms (say), it is probably a candidate for it doing the work without giving control to other taps.

I don't know how you are doing the search for "New:" but if you are searching for each letter in turn, it would be quicker to search for the colon first and then back to check for "|New" (there should be many fewer colon's than Ns)

I know it is a bu66er debugging taps so you might just prefer to use what you have got!

Cheers
Geoff

_________________
TopManager program
TF5800, TS On, F/W: MS6 Recommended F/W 12/9/2009 -Sy+EvEzPfUUuZ
TAPs: PcControl B1.4; StopExit v1.01; PruneEPG 1.0; fsSave 1.1; QuickJump 1.72; SecCache (UK) v0.4; EIT Sub (Game) v0.6; EPG2MEI v0.96; MyStuff 6.6; Bookmark 3.0; Extend v1.7; Font Manager 1.0d; MyInfo B5.6; MHEG On/Off A3;
Sig generated by EMJB's MyInfo.tap on 29/12/18
View user's profile Send private message Visit poster's website
freebird
Posted: Sun Apr 19, 2020 1:54 pm Reply with quote
Joined: 15 Aug 2007 Posts: 16
I'm fairly sure that TitleRename was not the cause as it's been in use to 2x toppies for a number of years without issue and always finishes well before MyStuff loads. Although v0.1 didn't exit for 30 secs (hangover from when I was developing it), it did all the work (~300ms) on the first idle event, released control immediately and only exited on an idle event after 3000 ticks - it could just as easily have exited immediately. I know 300ms is a little long to hog control but it was only at start up and never caused any issues.

That said, your comments did get me thinking about the tap again. There was never a need for it to be a TSR but if I did the work in in main.c, all subsequent taps failed to load - hence a TSR with all work done in the TAP_EventHandler callback. I've now finally traced the cause of this behaviour to TAP_Hdd_ChangeDir - substituting it with Firebird's HDD_ChangeDir has fixed the problem ... don't know if it was just upsetting the TAPCommander tap as I didn't try it without. Anyway, it's now an application tap and exits before all other taps get loaded - result.

Nige

_________________
Freebird's TAP Library
TF5800, TS On, F/W: 5.13.65 +MS6 recommended +ScUVZ
TAPs: TAP Commander 1.34; TitleRename 1.2; TimeShiftGuard 0.4; EIT Sub 0.6; EPG2MEI 0.96; SecCache (UK) 0.4; MyStuff 6.6;
TF5810, TS On, F/W: 5.15.09 +MS6 recommended +EzPfScUUuVyXpZ
TAPs: As TF5800 + MPDisplay V2.00
View user's profile Send private message Visit poster's website 5800 and 5810

Display posts from previous:  

All times are GMT + 1 Hour
Page 1 of 1

Jump to:  

You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum