Friday, December 21, 2007

Go Elf Yourself

Just in time for the holidays, now you can make like Will Ferrell and elf yourself!



If this doesn’t bring a smile to your face, then you should just go to sleep and wait for Jacob Marley and the rest of the ghosts to come and visit you this weekend.

I will say I think I make one of the ugliest elfs on the planet though. Hopefully you’re much better than I am.


You can make one of these little greetings for yourself at Elf Yourself.com
and send it to your friends. In addition, although I didn’t do it, you
can record your voice greeting to go along with your card.


I’d love to see you as an elf, so be sure and come back and leave
your personalized URL in the comments and share with the rest of us.


Here’s the link to my personalized card.


UPDATE: If you’re having problems accessing the Elf Yourself website, try leaving off the “www” in the URL. So, use http://elfyourself.com

Ref : http://www.uncovertheinternet.com/go-elf-yourself/


Powered by ScribeFire.

How to get rid of SoftICE mode in P89V51RD2

How to get rid of SoftICE mode in P89V51RD2.



Disclaimer:


No warranty that this will work for your device.

No liability for damages, lost devices etc.

Do everything on your onwn risk.





Assuming bootloader v4 and softice mode (consequence of :00000002FE).


  • download and install Keil uVision2 (evaluation version is enough); run it
  • download unsoftice.a51 (ref [1])
  • select Project->New Project, enter any name (e.g.
    "unsoftice"); a "select device for Target" window opens, select
    Philips->P89V51RD2, a dialog opens ("Copy Standard 8051 startuop
    code...") answer No
  • select File->Open, select unsoftice.a51; file should open
  • select Project->Components,Environments,Books, a window
    opens, in Project Components select Add Files, enter/browse
    unsoftice.a51
  • select Project->Build target, in the bottom (Outputs Window) it should write
     0 Error(s), 0 Warning(s).

  • select Project->Options for Project, Option for Project
    window opens, select tab Debug, select in the right column on top Use:
    Keil Monitor-51 driver, don't change anything else (unless the target
    device is not on COM1 - in that case modify it in the Options), click
    OK (window closes)
  • select Debug->Start/Stop debug session (in evaluation
    version a nag window EVALUATION VERSION (code limit 2k) opens, click
    OK), the windows rearrange a bit
  • select Debug-Go (nothing really happens), clicking on the red
    "Stop" button should bring a window saying something like "Can't stop
    application because serial interrupt is disabled". Click Stop
    debugging, wait for a moment until window "Connection to target lost"
    appears, click Stop Debugging.
  • you can exit Keil uVision2.




At this moment, the original state of bootloader is (hopefully) already restored.

Test:

- run your favorite terminal emulator, set 9600/8/n/1
NO_handshake. Switch CAPS LOCK ON (check led CapsLock on keyboard) and
hold U (for autorepeated capital U). Reset the target (or switch
off/on) while holding U. In a while, it should echo back the U's. Now
try typing
:020000050000f9
it should echo what you type and when typing
in the last character (="9") it should echo 2 more characters, a
fullstop and a carriage return, so the echo should look like:
:020000050000f9BF.



Now you can upgrade the bootloader to version 5 (can be found on Philips website) or try some other bootloader modification...


REF: http://www.efton.sk/t0t1/unsoftice.htm

==============
REF 1:
==============

SFCF DATA 0B1H ; Flash Configuration
SFCM DATA 0B2H ; Flash Command
SFAL DATA 0B3H ; Flash Address Low
SFAH DATA 0B4H ; Flash Address High
SFDT DATA 0B5H ; Flash Data
SFST DATA 0B6H ; Flash Status

;************************************************************************
;* MCU IAP Commands *
;************************************************************************
SFCM_SE EQU 0BH ; Sector-Erase IAP cmd
SFCM_VB EQU 0CH ; Byte-Verify IAP cmd
SFCM_PB EQU 0EH ; Byte-Program IAP cmd

;************************************************************************

ORIG_DATA EQU R6
;************************************************************************
;* MAIN PROGRAM *
;************************************************************************

org 00000h
ljmp main

org 2000h
main: mov PSW, #0 ; select register bank 0


start: anl SFCF, #10111111b ; BFh--> force IAPEN=0
; orl SFCF, #10000000b ; VIS=1
; mov SFDT, #0 ; Enter any value other than 55h
mov dptr, #1f00h ;load destination addr.
lcall sector_erase ; erase the bytes before write to them
;=====================================================================


mov a,#00h

mov dptr,#1f20h
loop:
mov ORIG_DATA, a
lcall byte_pgm ; write a byte from ACC to dest address

lcall verify_byte ; read back the byte written to destination
xrl a, ORIG_DATA ; compare with original data
jnz ERROR ; jump to ERROR if verification fails

Stop:
ajmp Stop ; end of code execution

;************************************************************************
;* IAP SUBROUTINES *
;* 1. SECTOR-ERASE *
;* 2. BYTE-PROGRAM *
;* 3. BYTE-VERIFY *
;************************************************************************

;===================================================================
; Subroutine of Sector Erase
;===================================================================
sector_erase:
orl SFCF, #40h ; enable IAP
mov SFAH, dph ; load high order address byte
mov SFAL, dpl ; load low order address byte
mov SFCM, #SFCM_SE ; issue sector erase command

busy: mov a, SFST
jb acc.2, busy ; wait until flash is NOT busy.

safety:
anl SFCF, #10111111b ; disable IAP
mov SFDT, #0 ; any value other than 55h

ret

;=====================================================================
; Subroutine of Byte Program
;=====================================================================
byte_pgm:
orl SFCF, #40h ; enable IAP
mov SFAH, dph ; set address to write a byte
mov SFAL, dpl
mov SFDT, ORIG_DATA ; store data to be programmed
mov SFCM, #SFCM_PB ; issue program-byte cmd

done?: mov a, SFST
jb acc.2, done? ; wait until byte-programming is done.
ljmp safety
;=====================================================================
; Subroutine of Byte Verify
;=====================================================================
verify_byte:
orl SFCF, #40h ; enable IAP
mov SFAH, dph ; address from where to read a byte
mov SFAL, dpl
mov SFCM, #SFCM_VB ; issue verify_byte cmd
nop
mov a, SFDT ; data is stored in ACC
ljmp safety
;=====================================================================


ERROR:
mov p1, #55h ;indicating IAP failed.

EXIT:
sjmp $



END






Powered by ScribeFire.

Wednesday, December 19, 2007

AntiVirus review and cost comperasion









































































































































































































































































































Excellent
Very Good
Good
Fair
Poor

Rank 4 5 6 7 8 9 10
Reviewer Comments
Lowest Price
$24.95


$39.95


$39.99


$35.95


$60.89


$39.99


$39.99


$38.95


$49.99


$39.95



Overall Rating
Ratings
Ease of Use
Effectiveness
Updates
Feature Set
Ease of Installation
Help/Support
Virus Defintions Updated (Average) hourly hourly As Needed Daily Daily Daily Weekly Daily Daily Daily
Scanning Time 80 GB HardDrive 20 Min 8 Min 24 Min 30 Min 35 Min 1 Hour 35 Min 24 Min 30 Min 35 Min

Updates
Yearly Subscriptions to Definition Updates $19.99 $39.95 $27.30 $50.95 $39.95 $34.95 $29.95 $33.30 $9.95 $39.95
Product Details Detail Detail Detail Detail Detail Detail Detail Detail Detail Detail

Rank 4 5 6 7 8 9 10
TOP TEN PRODUCTS BitDefen Kaspersk ESET Nod32 Trend Micro (PC-Cill F-Secure Anti-Vir McAfee VirusSca Norton AntiViru AVG Anti-Vir Pro CA Antiviru Norman Virus Control


Ref : http://anti-virus-software-review.toptenreviews.com/

Powered by ScribeFire.