[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

HELP ME PLEASE PART II!!!!!



I wrote a message previously to which no one replied, so here is a follow-up
with a little more information.  I have the assembly source code (I don't know
assembly AT ALL!!) and it tells what the "secret" key is to unlock the hard
drive.  If anyone knows assembly and can decipher what the secret key is,
please tell me!!!  I can't get into my hard drive!

Here's the source code:

 lst off
 exp off
 tr on
 TYP TIF ;startup file!
*======================================================
* PassKey protection program

* Upon booting this program clears the keystrobe and checks
* to see if the 'secret' key has been pressed.  We allow that
* it may be cleared by another program.

* Written by Lane Roath to keep 'people' off his machine!
*------------------------------------------------------
* 06-Aug-89 1.00 :really mess with the directory
* 18-Jul-89 0.00 :the idea, the insperation, the deed!
*======================================================

 rel

 lst off
 put 5/e16.gsos
 use 4/gsos.macs
 lst rtn

KeyBoard = $E0C000
KeyClear = $E0C010

oNext = 2
oAccess = $22

NextBlock = 3 ;standard ProDOS link block

*======================================================
* Simple- just get a single keypress!

 php ;return safely!
 phb
 phk ;work in our data bank
 plb
 clc
 xce
 SEP %00100000
]loop ldal KeyBoard
 and #$7F
 cmp #"I"&$1F
 bne :byebye ;not Lane or John!
 REP %00110000

 iGSOS _GetBootVol;GBVParms;1
 bcs :error
 iGSOS _GetDevNumber;GDNParms;1
 bcs :error
 lda GDNParms+6
 sta RWParms+2 ;access correct device
 iGSOS _DRead;RWParms;1
 bcs :error
 SEP #$30
 lda Buffer+oNext ;reset access
 sta Buffer+oAccess
 lda #NextBlock
 sta Buffer+oNext ;restore block link!
 REP #$30
 iGSOS _DWrite;RWParms;1
 bcc :byebye
:error
 brk $69
:byebye
 plb ;restore environment
 plp
 rtl ;outa here!

*------------------------------------------------------
* Data structures

GBVParms
 dw 1
 adrl GBPath
GDNParms
 dw 2
 adrl GBPath+2
 dw 0 ;RESULT
GBPath
 dw 65
 ds 65
RWParms
 dw 6
 dw 0 ;devnum
 adrl Buffer
 adrl 512 ;only need first 4 bytes!
BlockNum adrl 2
 dw 512
 adrl 0 ;RESULT

Buffer = * ;we DS 512 bytes in .JOB file!

 lst off
 sav pw.o

If anyone can figure out the "secret key" PLEASE let me know!!!
Thans you VERY much!

Brian Peek
peekb@gar.union.edu

PS: Sorry about the length but I don't know where the important parts are!