Tape protection systems

discussion of beeb/electron applications, languages, utils and educational s/w
User avatar
AndyF
Posts: 967
Joined: Sat Feb 23, 2008 10:16 pm
Location: Derby
Contact:

Tape protection systems

Postby AndyF » Fri May 29, 2015 8:56 pm

I cannot say I've noted any actually although its a rare day I load from tape and that's usually an emulated one.

Given other platforms had things like hyperloaders and sometimes 'difficult' protection systems such as Speedlock (various versions, 'difficulty' increases exponentially with each new version!) and Alcatraz (nasty) , did the 'B have any 'protected tape systems ?

I'm not aware of any 'high' speed loaders at all thinking about it, I'm unsure if that's possible as I suspect the tape routines are in the OS rom. Having said that other 'platforms' get around this by having a modified copy of said routines in ram and using those...

I would be interested to learn about any said tape protection systems on the 'B however.

User avatar
CMcDougall
Posts: 5618
Joined: Wed Feb 02, 2005 3:13 pm
Location: Shadow in a Valley of Scotland

Re: Tape protection systems

Postby CMcDougall » Fri May 29, 2015 9:32 pm

no hyper loaders BITD, but Rich Talbot-Watkins has done this 4+yrs ago, and it does work on real beeb
http://www.retrosoftware.co.uk/forum/vi ... load#p4693
the only protected tape systems I can think of are Stream loaders for games made by Firebird (Mr Freeze, The Hacker, Microcosm, Bird Strike, Acid drops & Star Drifter) also others (Revs, Nightshade, Alien8 & Lunar Jetman) and changing names every block (Boffin 1&2, Geoff Capes Strongman, Bug Eyes II, Summer Olympiad & Superman Man Of Steel)
then there is very weird blocks (Mr Mephisto, Elite & Tapper)
ImageImageImage

User avatar
richardtoohey
Posts: 3378
Joined: Thu Dec 29, 2011 5:13 am
Location: Tauranga, New Zealand

Re: Tape protection systems

Postby richardtoohey » Fri May 29, 2015 10:37 pm

There's also the simple Locked mechanism that Acorn sued someone (PCW?) over disclosing.

User avatar
AndyF
Posts: 967
Joined: Sat Feb 23, 2008 10:16 pm
Location: Derby
Contact:

Re: Tape protection systems

Postby AndyF » Fri May 29, 2015 11:05 pm

richardtoohey wrote:There's also the simple Locked mechanism that Acorn sued someone (PCW?) over disclosing.


Is that similar to how you can set 'only exec' options with an ADFS file (but obviously for tape) to prevent easy tampering ? :) , I realise this is not a good example but it is the best way of explaining my thoughts, ie tape 'attributes'

User avatar
richardtoohey
Posts: 3378
Joined: Thu Dec 29, 2011 5:13 am
Location: Tauranga, New Zealand

Re: Tape protection systems

Postby richardtoohey » Fri May 29, 2015 11:15 pm

No, not quite the same ... there's stuff in *. about it, but I haven't found a simple explanation yet - I'll keep looking!

EDIT: here's one but it digresses a bit ... viewtopic.php?f=2&t=1195

User avatar
richardtoohey
Posts: 3378
Joined: Thu Dec 29, 2011 5:13 am
Location: Tauranga, New Zealand

Re: Tape protection systems

Postby richardtoohey » Fri May 29, 2015 11:20 pm

Maybe this explains it: http://www.acornelectron.co.uk/eug/71/h-lock.html

Or at least gives you enough to go on.

User avatar
AndyF
Posts: 967
Joined: Sat Feb 23, 2008 10:16 pm
Location: Derby
Contact:

Re: Tape protection systems

Postby AndyF » Fri May 29, 2015 11:24 pm

Thank you. :)

User avatar
BigEd
Posts: 1495
Joined: Sun Jan 24, 2010 10:24 am
Location: West
Contact:

Re: Tape protection systems

Postby BigEd » Sat May 30, 2015 9:04 am

IIRC, there was a game which used a loader to change baud rate then read one or two naked bytes from tape, and then change back and load the main program conventionally. The byte or two of extra info had to be right for the main game to run correctly. Might have been Lunar Rescue. (https://www.youtube.com/watch?v=wV6U9FfA2Fo)

User avatar
leenew
Posts: 3402
Joined: Wed Jul 04, 2012 3:27 pm
Location: Doncaster, Yorkshire

Re: Tape protection systems

Postby leenew » Sat May 30, 2015 10:19 am

Hi Andy,

If by "tape protection system" you mean anything that stops you from simply LOADing a file then SAVEing it then most commercial tapes had some form of protection.

The "official" way of stopping casual snoopers was the "LOCKED" error.
This would only allow a file to be *RUN and not LOADed and messed with.
As has been alluded to above, a magazine at the time printed a small type-in to get round this system and was taken to court by Acorn for doing so.

viewtopic.php?f=9&t=5618&hilit=article+acornsoft+court

Many magazines ran articles on Tape-to Discing. This is my favourite series by the great Albert Schofield :D http://8bs.com/artt2d.htm

There were many other "custom" tape loaders to stop people copying games.
As Col says, FIREBIRD games used a "stream" loader, one continuous block of data instead of standard blocks.
The Ebury educational tapes (Mr. T tells the time etc.) used changing baud rates and a custom loader that loaded data all over the place.

viewtopic.php?f=32&t=8522&hilit=ebury+tells+time

In fact, you could set the tape system to do whatever you wanted (block length, baud rate etc).
The "lazy" way of getting round most of this stuff was to let it all load in, do all its complicated decryption etc. and then scoop up the memory before the code was run by putting an RTS instruction at the end :D (Obviously this didn't work on some of the more fiendish stuff). Which brings us to:
The king of stopping people copying tapes: Kevin Edwards.
He protected the ULTIMATE games to such a degree that they have only recently been unravelled!

viewtopic.php?f=1&t=696&hilit=nightshade+protection

**CAUTION!** Your head will hurt reading this thread....

I always found tape protection an endless source of fun and fascination.
"cracking" a tape - finding the hidden messages left by programmers - and finally getting it working (but not always! :oops: ) was more fun than most of the games themselves.

Lee.

User avatar
richardtoohey
Posts: 3378
Joined: Thu Dec 29, 2011 5:13 am
Location: Tauranga, New Zealand

Re: Tape protection systems

Postby richardtoohey » Sat May 30, 2015 10:27 am

leenew wrote:I always found tape protection an endless source of fun and fascination.
"cracking" a tape - finding the hidden messages left by programmers - and finally getting it working (but not always! :oops: ) was more fun than most of the games themselves.
+1 to that :D I was usually trying to crack the protection to get my tape games onto disc; didn't always succeed.

User avatar
AndyF
Posts: 967
Joined: Sat Feb 23, 2008 10:16 pm
Location: Derby
Contact:

Re: Tape protection systems

Postby AndyF » Sat May 30, 2015 10:58 am

Thank you for the extra info etc. :)

I too find tape protection systems interesting (but on other platforms) hence me wanting to know what was done for Acorn systems.

User avatar
vanekp
Posts: 337
Joined: Thu Nov 30, 2000 7:09 am
Location: The Netherlands

Re: Tape protection systems

Postby vanekp » Sat May 30, 2015 10:14 pm

you can look here for a list of BBC software protection.
http://beebwiki.mdfs.net/List_of_copy_protected_software_titles_on_cassette

User avatar
sweh
Posts: 1847
Joined: Sat Mar 10, 2012 12:05 pm
Location: New York, New York
Contact:

Re: Tape protection systems

Postby sweh » Sat May 30, 2015 11:48 pm

Elite's tape protection depended on what you wanted to do with it... if all you wanted to do was copy it for a friend then it was very simple protection; it just inverted the "last block" flag. So a simple interrupt to reset it would allow you to *LOAD it, and then another interrupt routine to set it would let you *SAVE the result. That gave you a working copy of the original.

If you wanted to _break_ the code and do clever stuff with it... then things got harder!
Rgds
Stephen

User avatar
AndyF
Posts: 967
Joined: Sat Feb 23, 2008 10:16 pm
Location: Derby
Contact:

Re: Tape protection systems

Postby AndyF » Sun May 31, 2015 12:50 pm

Was there anything to disrupt (in theory) the 'old skool' method ie a straight tape-to-tape ?

For instance, some early (ZX) speedlocks had pulsating leader tones (with clicks) which could play havoc with some tape recorders auto gain control.

User avatar
CMcDougall
Posts: 5618
Joined: Wed Feb 02, 2005 3:13 pm
Location: Shadow in a Valley of Scotland

Re: Tape protection systems

Postby CMcDougall » Sun May 31, 2015 2:50 pm

AndyF wrote:Was there anything to disrupt (in theory) the 'old skool' method ie a straight tape-to-tape ?

nothing stopped me from tape dubbing on a Sony Hi-Fi :oops:

but that's boring and easy, I wanted them put to disc, for quick loading 8)
ImageImageImage

User avatar
vanekp
Posts: 337
Joined: Thu Nov 30, 2000 7:09 am
Location: The Netherlands

Re: Tape protection systems

Postby vanekp » Tue Jul 07, 2015 3:56 pm

And I want to reproduce them in original working quality on tape with all the protection in tacked :)

User avatar
Pernod
Posts: 1001
Joined: Fri Jun 08, 2012 10:01 pm
Location: Croydon, UK

Re: Tape protection systems

Postby Pernod » Tue Jul 07, 2015 5:39 pm

BITD I always used a pair of Aiwa separates, had to make sure Dolby was off! Am sure a dedicated twin deck would copy anything. Had trouble with Lunar Jetman on the separates though.
- Nigel

BBC Model B, ATPL Sidewise, Acorn Speech, 2xWatford Floppy Drives, AMX Mouse, Viglen case, etc.

User avatar
vanekp
Posts: 337
Joined: Thu Nov 30, 2000 7:09 am
Location: The Netherlands

Re: Tape protection systems

Postby vanekp » Tue Jul 07, 2015 8:02 pm

By Original Quality I mean I can from the images I have on a disc create 100% working copied of the tapes with all the special blocks and bits :)

O talking of tapes does anyone know of a electronic device I can use to replace the tape deck to record and playback tape software on the bbc?

User avatar
Wookie
Posts: 342
Joined: Sat Aug 27, 2005 10:06 am
Location: Lost in a fog of PSU capacitor smoke

Re: Tape protection systems

Postby Wookie » Tue Jul 07, 2015 10:56 pm

vanekp wrote:O talking of tapes does anyone know of a electronic device I can use to replace the tape deck to record and playback tape software on the bbc?

Line In and Line Out connections on your modern PC ? :twisted:

richardtoohey wrote:
leenew wrote:I always found tape protection an endless source of fun and fascination.
"cracking" a tape - finding the hidden messages left by programmers - and finally getting it working (but not always! :oops: ) was more fun than most of the games themselves.
+1 to that :D I was usually trying to crack the protection to get my tape games onto disc; didn't always succeed.

I used to have more fun hacking games to disc than playing them as well, Gary Partis games have stuck in my memory as they usually had a message on the end of the code dedicated to his then girlfriend later fiancée Tracy Diane Nickelson IIRC (standard cheat mode in his games was ILTDN).

Syncron had a message saying that it hadn't worked out between them and was in memory of happier times with her, I remember being quite sad for him when I read that one.
cheers Wookie
Overclocked StrongARM RiscPC + Viewfinder
Overclocked Arm3 8MB A310 + vidc extender
BBC Master with Matchbox CoPro
BBC B+ 64K
My original Electron from 1985 with Slogger MasterRam/Turbo,AP1,AP2 rom, AP3+4 & New AP6

User avatar
vanekp
Posts: 337
Joined: Thu Nov 30, 2000 7:09 am
Location: The Netherlands

Re: Tape protection systems

Postby vanekp » Sun Jul 12, 2015 9:53 am

Line In and Line Out connections on your modern PC ? :twisted:


I am sure I have seen a filter circuit with capacitors and a resistor one should use for this but can’t find it back :?

User avatar
CMcDougall
Posts: 5618
Joined: Wed Feb 02, 2005 3:13 pm
Location: Shadow in a Valley of Scotland

Re: Tape protection systems

Postby CMcDougall » Sun Jul 12, 2015 11:45 am

^no need for those, works 100% on mine straight through.

just put volume out PC at about >25% (usually 1/3) works very well.

if an Atom, use >75% (usually 100%)
ImageImageImage

User avatar
vanekp
Posts: 337
Joined: Thu Nov 30, 2000 7:09 am
Location: The Netherlands

Re: Tape protection systems

Postby vanekp » Sun Jul 12, 2015 1:03 pm

Its just if i save Wav files from BBC to PC i get this (see att.) at the start of each part, wich is not normal.
Attachments
MeMephisto.png

User avatar
CMcDougall
Posts: 5618
Joined: Wed Feb 02, 2005 3:13 pm
Location: Shadow in a Valley of Scotland

Re: Tape protection systems

Postby CMcDougall » Sun Jul 12, 2015 6:25 pm

^that's because GoldWave & Audacity are free rubbish! #-o

get WaveLab6+ for £350 \:D/
Image
viewtopic.php?f=6&t=7703&hilit=wavelab#p79162
ImageImageImage

User avatar
vanekp
Posts: 337
Joined: Thu Nov 30, 2000 7:09 am
Location: The Netherlands

Re: Tape protection systems

Postby vanekp » Sun Jul 12, 2015 7:39 pm

If I do it from tape to the pc I dont have this problem with US$59 Goldwave. only if i do it bbc to pc.

User avatar
vanekp
Posts: 337
Joined: Thu Nov 30, 2000 7:09 am
Location: The Netherlands

Re: Tape protection systems

Postby vanekp » Sun Apr 23, 2017 11:49 am

Trying to reproduce Estra (firebird) and but having problems with the switching of parity data, the loader does the following to set up 8e1 to begin :-

Code: Select all

1836  A9 E8       LDA  #&E8       )h
1838  A2 FD       LDX  #&FD       "}
183A  A0 00       LDY  #&00        .
183C  20 F4 FF    JSR  osbyte       t.
183F  A9 03       LDA  #&03       ).
1841  8D 08 FE    STA  &FE08     ..~
1844  A9 19       LDA  #&19       ).
1846  8D 08 FE    STA  &FE08     ..~
1849  A9 85       LDA  #&85       ).
184B  8D 10 FE    STA  &FE10     ..~
184E  60          RTS              `          `


then the last byte of each block it read either &19 or &1D which is then used to set up the data parity for the next block this is at :-

Code: Select all

179D  20 C1 17    JSR  &17C1      A.
17A0  85 50       STA  &50        .P
17A2  20 C1 17    JSR  &17C1      A.
17A5  85 51       STA  &51        .Q
17A7  20 C1 17    JSR  &17C1      A.
17AA  8D 08 FE    STA  &FE08     ..~
17AD  6C 50 00    JMP  (&0050)   lP.

When I try to simulate this it reads the 1st block fine and the second block I get a crc error, the data block is good but not the crc odd
when I am writing data all i am doing to change parity is writing the correct value to &FE08 so &19 or &1D
I know my data is good because if I go change all blocks to say &19 and then create the tape image it works no problem but not if I keep switching so I must be doing something wrong I setup tape output the following:-

Code: Select all

0C06  A9 E8       LDA  #&E8       )h
0C08  A2 FD       LDX  #&FD       "}
0C0A  A0 00       LDY  #&00        .
0C0C  20 F4 FF    JSR  osbyte       t.
0C0F  A9 03       LDA  #&03       ).
0C11  8D 08 FE    STA  &FE08     ..~
0C14  A9 15       LDA  #&19       ).
0C16  8D 08 FE    STA  &FE08     ..~
0C19  A9 AD       LDA  #&AD       )-
0C1B  8D 10 FE    STA  &FE10     ..~
0C1E  60          RTS   

And change parity with (setting A% to &19 or &1D) :-

Code: Select all

0C5E  8D 08 FE    STA  &FE08     ..~
0C61  60          RTS

is there another way to keep switching parity while writing tape data?

User avatar
richardtoohey
Posts: 3378
Joined: Thu Dec 29, 2011 5:13 am
Location: Tauranga, New Zealand

Re: Tape protection systems

Postby richardtoohey » Sun Apr 23, 2017 11:08 pm

vanekp wrote:Trying to reproduce Estra (firebird) ...
is there another way to keep switching parity while writing tape data?
Good luck, I failed with Firebird titles BITD, not that I'm l33t.

Not 100% sure what you are asking, so this answer might not make any sense :oops: but they might not have produced the tapes on a BBC. So maybe they made the tapes on some other computer / clever tape machine and the BBC can't do exactly the same? :-k

Or could be complete bunkum so donning my asbestos pants ready for the flames ... :D

User avatar
1024MAK
Posts: 6791
Joined: Mon Apr 18, 2011 4:46 pm
Location: Looking forward to summer in Somerset, UK...

Re: Tape protection systems

Postby 1024MAK » Mon Apr 24, 2017 9:06 am

richardtoohey wrote:so donning my asbestos pants ready for... :D
TMI!... :shock:

Mark
For a "Complete BBC Games Archive" visit www.bbcmicro.co.uk NOW!
BeebWiki‬ - for answers to many questions...

User avatar
vanekp
Posts: 337
Joined: Thu Nov 30, 2000 7:09 am
Location: The Netherlands

Re: Tape protection systems

Postby vanekp » Mon Apr 24, 2017 9:53 am

well I have the raw data of the tape files on a disc and I want to write them back to tape but Estra switches the parity every few block by writing to &FE08 every few blocks, I am trying to simulate that in recreating the tape but discovered that it's giving a crc error when I try to load it back in, my data is good cause if I go change all the blocks to the same 8e1 in the data I have so it does not switch then it works fine but is not a 1:1 copy then but works.
so was wondering if writing &19(8e1) or & 1D (8o1) to &FE08 between blocks will work with writing tape data or do I need to do more than that? as this does not seem to work.

I know to create a uef from the csw you need the following switches (depending on which version/side of the tape) :- makeuef -i EstraSide2_8bitUSB.csw -w 0 180 -z 30 8o1 -z 32 8e1 -z 35 8o1 -z 39 8e1 -z 41 8o1 -z 47 8e1 -z 49 8o1 -z 51 8e1 -z 54 8o1 -z 56 8e1 -z 61 8o1 -z 64 8e1 -z 66 8o1 -z 68 8e1 -z 70 8o1 -z 73 8e1 -z 75 8o1 -z 80 8e1 -z 84 8o1 -z 88 8e1 -z 90 8o1 -z 93 8e1 -z 95 8o1 -z 99 8e1 -z 102 8o1 -z 104 8e1 -z 106 8o1 -z 109 8e1

Coeus
Posts: 464
Joined: Mon Jul 25, 2016 11:05 am

Re: Tape protection systems

Postby Coeus » Mon Apr 24, 2017 1:18 pm

richardtoohey wrote:Not 100% sure what you are asking, so this answer might not make any sense :oops: but they might not have produced the tapes on a BBC. So maybe they made the tapes on some other computer / clever tape machine and the BBC can't do exactly the same? :-k


Indeed if your aim is to stop people loading the game from tape and then saving it to a different tape to share with a friend then the ultimate way to do that would be to find a format which is readable on the BBC, and where you can check that format too, but is not writable on the BBC.

But, of course, if you have written your own loader that loads some format you have designed instead of the standard tape format, and the person wanting to make the copy is able to run that just to the point it has loaded the game into memory and then save the data, they could ways do away with your custom loader.

That's pretty much what I remember doing BITD when transferring a game to disk. Often I would run the loaders in Beebmon to the point the data was loaded and then save to disc. Occasionally it was necessary to replace the loader with something that just set up some values in memory elsewhere that got checked later on. Another tick I had was a version of the OS which didn't hnour "memory clear on break".

Not being an archivist, the intent of transferring to disk was to make it load faster, not preservation of the tape in another form.

Of course, anyone wanting to simply make pirate copies of the tapes would just set up to HiHi cassette decks and do the copying in the analogue domain.

User avatar
vanekp
Posts: 337
Joined: Thu Nov 30, 2000 7:09 am
Location: The Netherlands

Re: Tape protection systems

Postby vanekp » Mon Apr 24, 2017 1:43 pm

if I wanted to crack it then I would do that I just want to be-able to reproduce the tape in a high quality format but a 1:1 copy of the original with all its copy protection, and yes I have got my own custom program to read the tapes in as data so I can then use that with custom save program to write it back to tape with all its protection in place have managed to reproduce most (no looked into joust as yet also uses switching parity).
What I am trying to find out is how do I (other than what I have given above) change parity mid stream, or maybe no-one has tried this on a BBC I am not sure which is why I put it out here on the forum.


Return to “software: other”

Who is online

Users browsing this forum: No registered users and 2 guests