1
0
mirror of https://github.com/mbirth/wiki.git synced 2024-12-25 23:04:06 +00:00

Various new posts and assets.

This commit is contained in:
Markus Birth 2015-02-26 00:22:00 +01:00
parent 909670ca6f
commit b2aeda93f2
46 changed files with 1257 additions and 0 deletions

BIN
assets/audiomate.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.8 KiB

BIN
assets/baycomwb2_1.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 28 KiB

BIN
assets/baycomwb2_2.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 30 KiB

BIN
assets/baycomwb2_3.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 26 KiB

BIN
assets/baycomwb2_4.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 55 KiB

BIN
assets/customlogo.bmp Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

BIN
assets/db25m.gif Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.4 KiB

BIN
assets/dellcpi_1.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 9.2 KiB

BIN
assets/dellcpi_2.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 14 KiB

BIN
assets/dellcpi_3.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 10 KiB

BIN
assets/dellcpi_4.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 20 KiB

BIN
assets/dellcpi_5.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 18 KiB

BIN
assets/dellcpi_6.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 32 KiB

BIN
assets/dellcpi_7.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 12 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 100 KiB

BIN
assets/gcwb_1.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 47 KiB

BIN
assets/gcwb_2.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 51 KiB

BIN
assets/gcwb_3.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 47 KiB

BIN
assets/hauptplatine.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 124 KiB

BIN
assets/latitude.zip Normal file

Binary file not shown.

BIN
assets/logo.bmp Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

BIN
assets/offenmitfront.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 95 KiB

BIN
assets/original-riddick.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 206 KiB

BIN
assets/platinenkomplett.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 114 KiB

BIN
assets/ripoff-pcdoctors.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 88 KiB

View File

@ -0,0 +1,17 @@
---
title: Domain-Cookies
language: en
layout: default
created: 2008-07-15 22:08:02 +0200
updated: 2008-07-15 22:08:02 +0200
toc: false
tags:
- know-how
- development
- web
- cookies
---
According to various documentation, the cookie domain has to contain **at least** 2 dots for a browser to accept this
as a wildcard cookie (e.g. `.google.com`) and use this for all sub-domains. So `.foo.bar.com` should work - **should**.
Opera doesn't like it and only accepts it domain-wide if there are **exactly** 2 dots in the domain name. In this case
`.bar.com`. If you use `.foo.bar.com` the string is ignored and the cookie only gets set for the current domain.

View File

@ -0,0 +1,69 @@
---
title: Bazaar (bzr)
language: en
layout: default
created: 2008-07-31 22:32:29 +0200
updated: 2008-08-01 00:41:36 +0200
toc: false
tags:
- know-how
- development
- dvcs
- bazaar
---
Bazaar is a distributed versioning system.
**Homepage:** <http://bazaar-vcs.org/>
**Tutorial:** [Bazaar in five minutes](http://doc.bazaar-vcs.org/bzr.dev/en/mini-tutorial/index.html), [Bazaar User Guide](http://doc.bazaar-vcs.org/bzr.dev/en/user-guide/index.html)
Most used commands
==================
Create local branch
-------------------
bzr init
bzr add file1 file2 fileN
bzr commit -m "Initial import"
Create local repo
-----------------
bzr init-repo
bzr init trunk
bzr init branches
bzr init tags
Copy remote repo
----------------
bzr branch bzr://path/to/repo
This copies the branch to your local directory. The two repos are still independent.
Convert to checkout
-------------------
bzr bind bzr://path/to/repo
Connects to that repository so commits are always made on both repos unless the `--local` parameter is given. Local
commits can be merged later by `bzr update` followed by `bzr commit`. `unbind` removes the connection with the
parent repo.
Import SVN dump file
====================
To import a Subversion dump, use [svn2bzr.py](http://bazaar-vcs.org/svn2bzr) (or at [LaunchPad](https://launchpad.net/svn2bzr)).
You will mostly just convert the dumpfile to a big bzr-repo:
svn2bzr.py svn.dump bzr/
You can then push the repo to the central repo by issuing
bzr push bzr/ bzr://path/to/central/repo

View File

@ -0,0 +1,33 @@
---
title: Mono + WinForms
language: en
layout: default
created: 2008-10-08 15:23:14 +0200
updated: 2009-07-17 23:15:27 +0200
toc: false
tags:
- know-how
- development
- mono
- winforms
---
**Installation manual:** [mono-project.com](http://www.mono-project.com/WinForms_Designer#Installation)
**Forum:** [UbuntuForums.org](http://ubuntuforums.org/showthread.php?t=468183)
The `System.Windows.Forms.dll` is contained in the [mono-winforms2.0-cil](apt://mono-winforms2.0-cil) package. The file
resides in `/usr/lib/mono/2.0/`. To make it show up in MonoDevelop, you might have to create a file `/usr/lib/pkgconfig/windows-forms.pc`
with the following contents:
~~~
prefix=/usr
exec_prefix=${prefix}
pkglibdir=${exec_prefix}/lib/mono/2.0
Name: System.Windows.Forms
Description: Windows Forms for Mono
Version: 2.0.0.0
Libs: -r:${pkglibdir}/System.Windows.Forms.dll
~~~
Afterwards you can add this as a Reference to your project in MonoDevelop.

View File

@ -0,0 +1,33 @@
---
title: Firebug
language: en
layout: default
created: 2008-12-22 14:58:35 +0100
updated: 2009-07-24 12:34:42 +0200
toc: false
tags:
- know-how
- development
- firebug
---
Firebug is a useful Firefox extension to debug JavaScript and more. To not raise error messages on browsers without
Firebug, there's a small script called [firebugx.js](http://getfirebug.com/firebug/firebugx.js), which creates empty
functions. [Sascha Hameister](http://javascript.io/index.php?/archives/42-Kleiner-Performance-Patch-fuer-firebugx.js.html)
has optimized this script a little bit and it now looks like this:
{% highlight javascript %}
// FirebugX for browsers without Firebug
if (!window.console || !console.firebug) {
var names = ["log", "debug", "info", "warn", "error", "assert", "dir", "dirxml", "trace",
"group", "groupCollapsed", "groupEnd", "time", "timeEnd", "profile", "profileEnd", "count"];
var emptyFunction = function() {};
window.console = {};
for (var i = 0, count = names.length; i < count; ++i) {
window.console[names[i]] = emptyFunction;
}
}
{% endhighlight %}
You might also want to use [Firebug Lite](http://getfirebug.com/lite.html).

View File

@ -0,0 +1,47 @@
---
title: PEAR Channels
language: en
layout: default
created: 2009-02-11 20:29:22 +0100
updated: 2009-08-09 13:35:46 +0200
toc: false
tags:
- know-how
- development
- php
- pear
---
Some channels for PEAR. Use this to add them:
pear channel-discovery <url>
* pear.php.net
* pecl.php.net
* components.ez.no
* pear.phpdb.org
* pear.phing.info
* pear.symfony-project.com
* pear.phpunit.de
* pear.php-baustelle.de
* pear.zeronotice.org
* pear.phpontrax.com
* pear.agavi.org
* phpsavant.com
Unsupported protocol
====================
If you get the following error message, you have to refresh the channels `pear.php.net` and `pecl.php.net`:
pear.php.net is using a unsupported protocal - This should never happen.
install failed
The easiest solution was found in the last post of a thread in the [PEAR Forum](http://www.pear-forum.org/post-5065.html):
* go to `/usr/share/php/.channels/`
* delete the files `pear.php.net.reg` and `pecl.php.net.reg`
* do a `sudo pear update-channels`
*[PEAR]: PHP Extension and Application Repository

View File

@ -0,0 +1,36 @@
---
title: Compile wx.NET
language: en
layout: default
created: 2010-01-22 17:36:17 +0100
updated: 2010-01-22 17:48:52 +0100
toc: false
tags:
- know-how
- development
- wx-net
---
* **Homepage:** <http://wxnet.sf.net/>
*wx.NET* is a *wxWidgets*-wrapper for Mono. The compilation is not really straight-forward as one is used to.
1. download the [wx.NET-...-Source.tgz](http://sourceforge.net/projects/wxnet/files/) file and unpack it into a folder
1. make sure you have the following packages installed (as of Ubuntu *Karmic*): [libwxgtk2.6-dev](apt://libwxgtk2.6-dev),
[mono-mcs](apt://mono-mcs), [libmono-system-data1.0-cil](apt://libmono-system-data1.0-cil) and maybe some more, but
these few were missing from my all-i-needed install
1. go to `Build/Linux` and rename the file `Defs.in.template` to `Defs.in`
1. edit that file and do the following changes: (Leave the rest as it is.)
INCLUDE_STC = no
# WXW_SOURCE_DIR = $(HOME)/packages/wx-widgets-2.6.4
WXW_INSTALL_DIR= /usr
1. go to `Build/Common` and edit the file `wx-config-helper`: Comment out line #241 so that it looks like this:
# SDie("output of '$wx_cmd' did not contain a -L/path/to/wx-widgets/lib/directory flag; are you sure wxWidgets has been built?") if ($wx_out !~ m#-L/#);
1. now go back to `Build/Linux` and run:
make wxnet-core
1. find your library in `Bin/wx.NET.dll`

View File

@ -0,0 +1,26 @@
---
title: JSON Mime-Types
language: en
layout: default
created: 2010-03-11 14:34:12 +0100
updated: 2010-03-11 14:34:12 +0100
toc: false
tags:
- know-how
- development
- web
- javascript
- json
---
For JSON data, there are different mime-types floating around the web:
* `application/json`
* `text/javascript`
* `text/json`
* `text/x-json`
At [ruby-forum.com](http://www.ruby-forum.com/topic/94728#193035) there is a nice discussion which points out, why it
is best to use **`text/x-json`**. The already wide-spread `application/json` is not really correct as `application` is
meant for data which can only be read *after being processed*. But as JSON is clear-text, you can read it somewhat
without parsing. That's why the `text` branch is to be preferred. And as the `json` type is not yet approved, you have
to use `x-json` - a nonstandard extension.

View File

@ -0,0 +1,164 @@
---
title: Getting Email Under Control
language: en
layout: default
created: 2008-07-15 23:59:52 +0200
updated: 2008-07-15 23:59:52 +0200
toc: false
tags:
- know-how
- gettingthingsdone
- gtd
- email
---
* **Homepage:** [www.davidco.com](http://www.davidco.com/store/catalog/NEW-Getting-Email-Under-Control-p-16377.php)
Managing the flood of email messages that most of us need to interact with on a daily basis is a growing challenge. No
one's volume is diminishing. That "beast is out of the barn," and we're not going to be able to shove it back in! So,
getting a grip on it with a good systematic approach is critical for staying sane.
If you are in the small minority of people currently able to maintain less than a screen-full of email most of the time
(because your volume is low and/or you process them rapidly and consistently), your system is probably fine as-is. If
you regularly have many more than that (hundreds, thousands?) residing in your email in-box, you're dangerously subject
to stress and numbness relative to your digital communication world.
Because of the volume of discrete messages and the speed with which they show up, email seems to be a unique demon,
with a life of its own. In essence, however, email is no different than a desktop in-basket or an answering machine
it's simply a collection box for incoming communication and information that needs to be assessed, processed, and
organized as appropriate. And controlling email involves the same challenge as managing your physical in-basket often
too much stuff that we don't have the time or inclination to process and organize as it comes in. So it easily becomes
a swamp of "staged" or "pending" items glanced at, perhaps even read, but not decided about or effectively organized
(I have uncovered as many as 7,000 emails still festering in a client's in-tray).
The Big Challenge
=================
As email is simply an in-box, it needs to be emptied regularly to be maximally functional. "Empty" does not mean
finishing all the work embedded in your emails it means making decisions about what each one means and organizing it
accordingly. The same procedures apply to any in-box whether it's the tray on your desk or your answering machine.
They should be processing stations, not storage bins. Because the volume in the computer is much greater than an audio
or paper-based "in," however, getting it to zero seems particularly daunting. But there is no light at the end of the
tunnel if you are merely letting things pile up there. It takes less effort to start every day or two from zero in your
in-box than it does to maintain "amorphous blobs" of accumulated and unorganized "stuff" that must continually be
re-read and re-assessed for what they mean.
The Basics
==========
We have seen hundreds of unique ways people have come up with to manage their email, and many work just fine as long
as nothing is lost, the inventory does not continue to increase, and someone can easily see the emails they need to
take action on. Here are some basic procedures that commonly work for everyone:
**Use the DELETE key!** The ease with which we trash things from our physical mail doesn't seem to translate to the
computer for many people perhaps because emails don't take up much physical space and they are so easily parked
somewhere that's not immediately in our face. They're taking up psychic space, however, and deleting everything that we
don't really need, as we encounter it, is crucial to managing the flood. When in doubt, throw it out. If you've let
emails pile up, purging is the first thing to do. Sometimes it is easier to clean house by clicking the "From" button
which will sort them by their source you can often dump several at a time that way.
**File!** Use a simple storage system for stuff you want to keep as archives and support information. If you're a "when
in doubt, keep it" person, that's fine, but don't have it clogging up your in-basket. Make reference folders in your
navigator bar and file those kinds of emails over there. It's a lot easier to lose track of them among the five hundred
or a thousand in your in-box than in a folder you can name. And your Search function can easily find most anything with
a key word. Avoid using nested folders that you have to click open to find the file. One simple alpha-sorted list by
topic, theme, or person is usually sufficient and easier to deal with on the run. Purge them when you have little
windows of time with nothing better to do.
**Complete the < 2-minute ones!** The infamous two-minute rule is crucial for email management. Anything you can deal
with in less than two minutes, if you're ever going to do it at all, should be done the first time you see it. It takes
longer to read it, close it, open it, and read it again than it would to finish it the first time it appears. In a
heavy email environment, it would not be unusual to have at least a third of them require less than two minutes to
dispatch.
**Organize emails that require action and follow-up!** If you've deleted, filed, and finished your < twominute emails,
you're left with only two kinds: (1) those that require more than two minutes to deal with and (2) those that represent
something you're waiting on from others. A simple and quick way to get control is to create two more folders in your
navigator bar "Action" and "Waiting For" and file them accordingly. These folders should be visually distinct from
your reference folders and should sit at the top of your folder list, which can be accomplished by making them all caps
with a prefix punctuation like the @ symbol or a hyphen (whichever will sort the folders to the top).
If you've deleted, filed, finished, or sorted your emails into action-reminding folders, you're left with an empty
in-basket. Now, at least, it will be much easier to review and evaluate a more complete inventory of your work at hand;
and you'll find it's a lot easier to focus on email or on anything else.
The On-Going Challenge
======================
You must consistently review actionable emails. Once you get your in-basket to zero, it will feel fantastic. But you
can't ignore the batch of ACTION emails you've organized. The problem with computers as reminder tools is the
out-of-sight-out-of-mind syndrome. If you're not reviewing them regularly enough, they will start to gnaw on your
psyche, creating even more avoidance and bad feelings. People leave emails in their in-basket to begin with for the
same reason they pile things on their desk, thinking, "If it's in front of me, I won't lose or forget it." Of course
that seemingly practical habit of visual cuing is undermined by the volume and ambiguity of what's in the piles. They
create numbness instead of clarity. It's much easier to assess your workload with actionable emails organized in one
place. But it requires the good habit of checking on them regularly to feel OK about what you're not doing with them at
the moment.
All this takes time and mental energy. Pretending that you can get email under control without dedicating the necessary
personal resources to do it leads to frustration and stress. These best practices help make the process as efficient as
possible, but the freedom that comes from having them under control is still not free. Just as people have learned to
accept commute time as dues they pay to live and work where they'd prefer, you must integrate the time and energy to
deal with email into your life and work style.
Customized Approaches
=====================
As personal management software has continued to evolve, in both the standard desktop as well as the myriads of
creative small applications and add-ins, the possibilities for variations in how to manage email abound. They can be
coded, colored, and automatically filed. They can be sorted by prioritized senders. They can be deferred for retrieval
at later times. They can be transferred and melded into task and to-do management functions in other parts of the
software.
If you set up and begin to get used to a simple folder system for actionable emails, you might find some specialized
sub-categories useful. "Read/Review" can be a folder for FYI-type emails (though printed versions of long ones are
easier to manage than on screen). "To Print" can be useful if you are not at a printer regularly. Some people find that
taking the time to edit the subject lines of their own stored emails to reflect the specific action they need to take
is useful.
Best Practices
==============
But no matter how you tweak it or how cool the unique features and good tricks are that you might explore and even
integrate as consistent functions into your personal system, the core principles of good workflow management must be
followed to foster relaxed control of the beast:
**Keep actionable and non-actionable emails in separate places.** It's too complex and stressful for your brain to
constantly have to re-sort it every time it looks at it. A system works much better than your psyche for that. Emails
filed in reference folders that still represent things to do produce anxiety; and email in the in-basket that is only
needed for retrievable information will fog up your focus. Because most people don't have a good action-reminder system
per se, they are trying to make their reference folders a system for remembering what to do, and that never really
works. If reference and action reminders are separate things, it allows much more freedom and ease with keeping as much
reference material as you want it simply becomes a library.
**Keep it clean.** Residue seems to self-generate but it doesn't self-destruct! Delete what you can to begin with, and
purge your reference files regularly, as things get out of date and lose their value to you.
**Keep them reviewed.** As with any action-reminder system, if you don't review and reassess the reminders of actions
you might need to be taking, your mind will take back the job; and it doesn't do that job very well. You'll then avoid
looking at your system and not really trust anything you're doing because of the hidden agreements with yourself you've
neglected to re-negotiate.
**Be good at the keyboard.** We would be remiss in not reminding you of one of the most important factors in email
management how fast you type and how facile you are with shortcut keys and codes. Not only is poor typing speed
inefficient, it creates a resistance to engage with email that undermines all the best intentions to get on top of it.
If you're not up to at least fifty words per minute, getting there with a good typing tutor could make a world of
difference.
We recommend using the simplest approach you can get by with, adhering to these basic best practices, especially if
you're somewhat starting from scratch in getting this area under control. If you are relatively sophisticated in your
email management already, and setting up more complex procedures for yourself has actually made it simpler, that's
terrific. The challenge though is to keep it current, complete, and consistent and not requiring more time and
thought than is worth the payoff you may get. Your process has to be so basic and almost automatic that you will
maintain it even when you don't feel like doing it.
Email, like any powerful tool, can be a blessing or a curse. And if the tool goes with the job, you need to invest in
whatever it takes to use it wisely and safely. It is a huge productivity enhancer, but when it gets away from you, it's
a severe occupational hazard.
©David Allen & Company 1998, 2008. All rights reserved. www.DavidAllenGTD.com

View File

@ -0,0 +1,25 @@
---
title: AudioMate / ALLSOUND
language: en
layout: default
created: 2009-01-26 09:54:04 +0200
updated: 2009-06-27 17:01:15 +0200
toc: false
tags:
- know-how
- hacking
- hardware
- audiomate
- allsound
---
![]({{ site.url }}/assets/audiomate.jpg)
* allnet **ALLSOUND**: [allnet.de](http://www.allnet.de/downloads.php?produkt=ALLSOUND)
* U-Media **AudioMate HCA-100**: [u-media.com.tw](http://www.u-media.com.tw/content/product/HCA-200V.php) (similar device)
* [gpl-devices.org](http://wiki.gpl-devices.org/index.php/U-Media_HCA-100)
<ul>
{% for page in site.categories.audiomate %}
<li><a href="{{ page.url }}">{{ page.title }}</a></li>
{% endfor %}
</ul>

View File

@ -0,0 +1,35 @@
---
title: Monitor Android Traffic with Wireshark (Windows)
layout: default
created: 2014-05-15 17:11:42 +0200
updated: 2014-05-15 17:11:42 +0200
toc: false
tags:
- know-how
- hacking
- android
- wireshark
---
Preparation
===========
You need tcpdump for Android (I used it from the "[Shark for Root](http://pkg.to/lv.n3o.shark)" app) and Netcat for
Windows (I used Ncat from [Nmap for Windows](http://nmap.org/download.html#windows)).
Setup Capturing
===============
Open 3 shells. Run these commands:
1st shell:
adb shell "su -c '/data/data/lv.n3o.shark/files/tcpdump -n -s 0 -w - port 443 | nc -l -p 11233'"
2nd shell:
adb forward tcp:11233 tcp:11233
3rd shell:
ncat 127.0.0.1 11233 | "C:\Program Files\Wireshark\Wireshark.exe" -k -i -

View File

@ -0,0 +1,76 @@
---
title: AudioMate Firmware
layout: default
created: 2009-01-26 00:47:15 +0100
updated: 2009-06-26 23:59:11 +0200
toc: false
tags:
- know-how
- hacking
- hardware
- audiomate
- allsound
- firmware
---
Download
========
* **1.2.2.1** BETA: [megaupload.com](http://www.megaupload.com/de/?d=HTVF7XZA)
* **Source Code**: [allnet.de](http://www.allnet.de/downloads.php?produkt=ALLSOUND)
Details
=======
Looking at the firmware file, the header starts - as usual - at `0x00`. It consists of the string `UMDA!` followed by
the firmware revision in octets. For the v1.2.2.1 I found the bytes `01 02 02 01`. After that are some bytes which
might be a checksum. The line looks like this:
55 4d 44 41 21 00 01 02 01 02 02 01 00 06 c5 c9 UMDA!...........
At `0x10` starts the *.tar.gz* compressed kernel image `kernel.bin` and it ends at `0x0e1474`. After that there's a lot
of room for more code in the future.
The kernel seems to be version 2.4.26-uc0 for MIPS architecture. At least I found the string somewhere there.
At `0x0ff000` the boot logo starts - a 128x64 pixel black-white-BMP. Since I don't like the original logo, I made a new
one. Here's the comparison:
![Original boot logo]({{ site.url }}/assets/logo.bmp) ![My custom boot logo]({{ site.url }}/assets/customlogo.bmp)
And now for the interesting part:
At `0x100000` the [cramfs](http://en.wikipedia.org/wiki/cramfs) starts. You can unpack it in Windows using e.g. the
[FSExtractor](https://sourceforge.net/project/showfiles.php?group_id=99199&package_id=108962&release_id=263019) or
*uncramfs* from the [Firmware-Mod-Kit](http://code.google.com/p/firmware-mod-kit/). You could also mount it using the
*cramfstools* or *fusecram*.
After mounting the kernel image, you'll find some interesting things. Here are some examples:
`/etc/customer.info`:
AudioMate U-MEDIA Communications, Inc http://www.u-media.com.tw
`/etc/buildtime`:
2005 Dec 22, 12:20 PM
Below `/etc/ringbell/` you'll find a MP3 file `ringbell.mp3` which is the alarm sound. I formerly guessed it is made of
sinus waves - but this discovery open new possibilities for tuning the device. The file is recorded at 44.1 kHz with
64kbps and mono signal.
Under `/etc/icons/` are all used icons in BMP format. Even the boot logo is found there - don't know why. Also a
"screenshot" of the main menu.
For time synchronization, the NTP server `0.pool.ntp.org` is used - good choice! This entry is found in `/etc/conf_def.dat`.
Finally you'll find all pre-defined radio stations in the binary file `/bin/dma_ui`. Sadly this throws all my plans
away. I hoped these are defined in a text file which I could change easily and re-insert into the kernel. I don't need
those 500+ Asian radio stations. I'd like to have my own favorite stations - because the 20 favorites the device
supports are not enough to hold ALL the stations I'd like it to hold.
Well, there still is the way of having lots of `.m3u` playlists with links to your favorite stations on a USB drive.
I still have to find out how the firmware gets checked for validity - because without knowing it, the firmware
containing my custom logo gets rejected. Seems like they didn't use a common checksum (CRC16 or CRC32) - or I didn't
find the correct range of where the checksum gets calculated.

View File

@ -0,0 +1,62 @@
---
title: AudioMate Hardware
layout: default
created: 2009-06-27 00:13:04 +0200
updated: 2009-06-26 00:41:29 +0200
toc: false
tags:
- know-how
- hacking
- hardware
- audiomate
- allsound
---
Opened with front panel
=======================
![]({{ site.url }}/assets/offenmitfront.jpg)
PCBs complete
=============
![]({{ site.url }}/assets/platinenkomplett.jpg)
* the yellow PCB on the left is the WIFI antenna
* the green PCB on the right is the FM antenna
* the small metal thingy right of the display is the [FM tuner](http://www.germes-online.com/catalog/80/383/page3/199471/fm_tuner.html)
* the black thingy left of the display is the IR receiver
Main PCB
========
![]({{ site.url }}/assets/hauptplatine.jpg)
* on the top are two connectors, an 8-pin (J9) and a 4-pin (J5) one
* the 4-pin connector, J5, is the serial console interface, the pins are as follows (left-to-right):
* +5V
* GND
* TxD (from SoC)
* RxD (to SoC)
* the larger ICs are:
* the CPU, a [Lattice 4128V](http://www.latticesemi.com/products/cpldspld/ispmach4000bcv.cfm) [CPLD](http://en.wikipedia.org/wiki/CPLD)
* a [IDT 72V04 L35J](http://www.idt.com/?partId=72V04L35J) FIFO chip
* a [Princeton PT8406](http://www.princeton.com.tw/temp/products.asp?product_level2_id=42) MP3/WMA decoder
Back of Front PCB
=================
![]({{ site.url }}/assets/frontplatinevonhinten.jpg)
*[PCB]: Printed Circuit Board
*[FM]: Frequency Modulation
*[IR]: Infrared
*[GND]: Common Ground
*[SoC]: System-on-Chip
*[ICs]: Integrated Circuits
*[CPU]: Central Processing Unit
*[CPLD]: Complex Programmable Logic Device
*[FIFO]: First In, First Out

View File

@ -0,0 +1,32 @@
---
title: Baycom Worldbook II
layout: default
created: 2008-07-20 22:18:02 +0200
updated: 2008-07-20 22:18:02 +0200
toc: false
tags:
- know-how
- hacking
- hardware
- bios
- passwords
- baycom
- worldbook
---
1. Open the lid.
1. Remove the keyboard. Proceed as follows:
First use a flat screwdriver to get unter the keyboard at the green line. Perhaps you have to push in the small clip
(the bottom-left red circle in the left pic) to be able to pull slightly the keyboard. Now get another screwdriver
and push in the small clip above the ESC-key marked with a red circle. The keyboard should snap out partially.
Proceed with the remaining 3 clips in the same way.
![]({{ site.url }}/assets/baycomwb2_1.jpg) ![]({{ site.url }}/assets/baycomwb2_2.jpg) ![]({{ site.url }}/assets/baycomwb2_3.jpg)
1. Now turn over the keyboard and locate the BIOS-battery. It is accessible through the hole marked with an arrow:
![]({{ site.url }}/assets/baycomwb2_4.jpg)
1. Use a screwdriver to short-circuit the BIOS battery for 3-5 seconds. The battery is hidden somewhat right under the
metal plate. But you can reach it without removing any other parts. Look:
![]({{ site.url }}/assets/baycomwb2_5.jpg)
1. Get with a screwdriver between the slit marked with those arrows and short the golden contact in the front with the
battery housing.
1. Replace the keyboard. Make sure it snaps into all clips. Now, the BIOS (incl. the password) should be erased.
[Back to overview.]({% post_url 2009-10-30-bios-passwords %})

View File

@ -0,0 +1,23 @@
---
title: COMPAQ Armada
layout: default
created: 2008-07-20 22:19:00 +0200
updated: 2008-07-20 22:19:00 +0200
toc: false
tags:
- know-how
- hacking
- hardware
- bios
- passwords
- compaq
- armada
---
This is a short one:
1. Remove the battery, the AC cable and the BIOS battery
1. Wait 10 minutes
1. Insert the AC cable into the notebook and **DON'T PRESS ANYTHING**
1. After 5 seconds, the notebook should turn itself on and the password should be gone.
[Back to overview.]({% post_url 2009-10-30-bios-passwords %})

View File

@ -0,0 +1,50 @@
---
title: DELL Latitude series
layout: default
created: 2008-07-20 22:26:53 +0200
updated: 2008-07-20 22:25:53 +0200
toc: false
tags:
- know-how
- hacking
- hardware
- bios
- passwords
- dell
- latitude
---
These ones are something different. DELL notebooks save their BIOS password in an EEPROM-chip so it isn't deleted when
you short-circuit the BIOS battery or something like that.
Also there's no jumper/DIP-switch which disables the password. Nevertheless, there are three different ways to get such
things fixed:
1. Solder out the EEPROM and replace it with an empty one (this will result in service tag loss), or
1. Generate an universal password for this device (only works for tags ending with `-D35B` for now), or
1. Short pin 6 or 7 of the EEPROM to ground. See [General strategy]({% post_url 2009-10-30-bios-passwords %}#dell_notebooks) for more info.
I will describe the second one here.
Service tags ending with -D35B
==============================
Switch on the notebook until you get the password-entry screen, which should look like this one:
![Password prompt of a DELL Latitude C610]({{ site.url }}/assets/delllati.jpg)
Notice the service tag number **8WG030J-D35B** which is the key to the password. Now hack this number into the nice tool ([Latitude_MasterPW.exe]({{ site.url }}/assets/latitude.zip),
there is another tool included for Latitude XPi) and generate your master password.
Enter the service tag **EXACTLY** as it appears in the BIOS (all upper case letters) and get your master password
("jgnijfyj" in this case).
Now enter this master password on the password prompt (Remember that on German keyboards, z ⇔ y!), **hold down the
<kbd>Ctrl</kbd>-key and press <kbd>Enter</kbd> twice**. Et voilà!
I don't know why, but somehow, my service tag changed to **8WG030J-595B** (either it was because of this password
breach or because of a BIOS upgrade). The generated universal password doesn't work with this new service tag.
Also read the DELL-section under [General strategies]({% post_url 2009-10-30-bios-passwords %}#dell_notebooks).
[Back to overview.]({% post_url 2009-10-30-bios-passwords %})

View File

@ -0,0 +1,44 @@
---
title: DELL Latitude CPi series
layout: default
created: 2008-07-21 19:19:56 +0200
updated: 2008-07-21 19:19:56 +0200
toc: false
tags:
- know-how
- hacking
- hardware
- bios
- passwords
- dell
- latitude
---
Thanks to *Heiko Kehr*. (Everything was done according to [this manual](http://www.darkmagic.org/mike/dell-tag/dell/dell.html).)
1. You can easily remove the keyboard after loosing the six screws. Pay attention that you lift the keyboard equally on
all sides and not only on one key. It would be sad to unlock this nice thing and then have a broken keyboard.
![]({{ site.url }}/assets/dellcpi_1.jpg)
1. The yellow arrow marks the connector to the keyboard. If you are a used to handle with electronic devices, you may
just flip the keyboard carefully leaving it connected. If you have opened up an electronic device for the first time,
please, put everything back in place and bring your notebook to someone who does such things more often. Oh, now is
a good time to remove all power sources from the notebook (Remove AC plug and battery!!).
![]({{ site.url }}/assets/dellcpi_2.jpg)
1. To remove the CPU-circuit board without damaging it, you have to carefully remove the clamp marked with a blue arrow.
It is just clipped on and you can later replace it without any need to bend it.
I then lifted the circuit board a bit on the right side to detach it from the connector. By pushing it back and
lifting it one the left side (on the cooler) at the same time, it slowly slipped out of the connector.
![]({{ site.url }}/assets/dellcpi_5.jpg)
1. I then thought of how I may power on the notebook while shorting the EEPROM. I had the idea of using wires which I
may have cut from the outside, so that I did not have to disassemble the notebook again.
![]({{ site.url }}/assets/dellcpi_3.jpg) ![]({{ site.url }}/assets/dellcpi_4.jpg)
![]({{ site.url }}/assets/dellcpi_6.jpg)
1. Nevertheless, I opened it again to remove the wires, and for taking photos. But I didn't heat the soldering iron
again, instead, I "broke the wires away".
I soldered them using a gas soldering iron. First, because of static electricity charge and second … because it was
the first thing in my hand. After replacing all neccessary parts, I shorted the two wires with my right hand while
powering on the notebook with the left one. The now seen message was very different from those I knew. Splitted
wires and went into the BIOS. I changed settings to the best of my knowledge and rebooted. Pleasure!!
![]({{ site.url }}/assets/dellcpi_7.jpg)
[Back to overview.]({% post_url 2009-10-30-bios-passwords %})

View File

@ -0,0 +1,29 @@
---
title: GERICOM Webboy
layout: default
created: 2008-07-21 19:26:28 +0200
updated: 2008-07-21 19:26:28 +0200
toc: false
tags:
- know-how
- hacking
- hardware
- bios
- passwords
- gericom
- webboy
---
1. Turn the notebook onto its lid and remove the power plug and battery
1. Remove the screws of the top left cover and open it. You will find the CPU-Cooler.
![The area accessible through the top-left opening on the bottom side]({{ site.url }}/assets/gcwb_1.jpg)
1. Now remove the 4 screws of the Cooler and also the Cooler itself. The BIOS battery is now accessible through a
fishplate.
![The green arrow marks the location of the connector of the CPU fan]({{ site.url }}/assets/gcwb_2.jpg)
1. Short the battery's poles with a screwdriver at the red mark for about 2-5 seconds. After that, the BIOS settings
should be deleted.
![]({{ site.url }}/assets/gcwb_3.jpg)
1. Refit everything and take special care to the CPU-Cooler, since a damage to the Dye (the dark rectangular thing in
the middle of the CPU) is a death sentence to the CPU. And NEVER boot the notebook without CPU-Cooling!
[Back to overview.]({% post_url 2009-10-30-bios-passwords %})

View File

@ -0,0 +1,22 @@
---
title: IBM PS/2 Aptiva
layout: default
created: 2008-07-21 19:26:56 +0200
updated: 2008-07-21 19:26:56 +0200
toc: false
tags:
- know-how
- hacking
- hardware
- bios
- passwords
- ibm
- aptiva
---
This is a short one:
For skipping the password check, you have to hold down both mousebuttons after power-on until the first beep.
If this doesn't work, try to press both mousebuttons repeatedly.
[Back to overview.]({% post_url 2009-10-30-bios-passwords %})

View File

@ -0,0 +1,322 @@
---
title: IBM ThinkPad series
layout: default
created: 2008-07-21 19:50:40 +0200
updated: 2008-07-21 19:50:40 +0200
toc: true
tags:
- know-how
- hacking
- hardware
- bios
- passwords
- ibm
- thinkpad
---
Please also see [this homepage](http://www.ja.axxs.net/unlock/) for more information regarding removing passwords from
IBM ThinkPads.
240 [2609]
==========
Short the jumper JP1.
310/310D/310E/310ED [2600]
==========================
Use switch SW2 near CPU socket (second bit switch counting from the lowest side).
??? [2610], 365C/365CD/365CS/365CSD/365E/365ED [2625]
=====================================================
The following procedure disables user and supervisor passwords:
1. Power-off the computer.
1. Disconnect the AC-Adaptor.
1. Open the keyboard and remove the battery pack.
1. Remove the Mylar cover. See FRU Removals and Replacements.
1. Locate the S2 switch block on the system board.
1. Set Switch 1 to OFF.
1. Wait 30 seconds.
1. Set Switch 1 to ON.
1. Replace the Mylar cover.
1. Replace the battery.
1. Connect the AC-Adaptor.
1. Power-on the computer.
1. Go to a DOS full screen.
1. Press <kbd>Ctrl</kbd>+<kbd>Alt</kbd>+<kbd>F11</kbd> to access the setup screen and reset the passwords.
355x [2619], 360x [2620], 370C/750x/755C/755CS [9545]
=====================================================
How to disable the power-on password:
1. Power-off the computer.
1. Open the keyboard and remove the battery pack and the diskette drive.
1. Remove the attachment holder.
* For models 355x and 360x, see '1115 Standby Battery'.
* For models 370C, 750x, 755C and 755CS, see '2105 Standby Battery'.
1. Install a jumper on the power-on password connector -1- at bottom left side of the system board.
1. Reinstall the diskette drive and battery pack.
1. Power-on the computer and wait until the POST ends.
1. Verify that the password prompt does not appear.
1. After service check is completed, remove the jumper.
710T [2523]
===========
To disable the power-on password:
1. Power-off the computer.
1. Remove backup-battery cover.
1. Locate the security switch beside the backup battery.
1. Move the slide switch to the opposite side.
1. Power-on the computer.
730TE [2524]
============
Use the following procedure to disable the power-on password if needed.
1. Power off the system.
1. Remove the Pen Compartment Cover and the Sub Battery cover.
1. Identify the security pin wich is located beside the sub battery.
1. Power on the system while making a short-circuit between the two security pins with a regular screwdriver's flat tip.
??? [9546, 9547]
================
1. Power-off the computer.
1. Open the keyboard, and remove the diskette drive or CD-ROM drive and the battery pack.
1. Install a jumper on the power-on password connector on the left side of the FDD connector.
(See 'Password Connector' for location.)
1. Reinstall the battery pack and the diskette drive/CD-ROM drive.
1. Power-on the computer and wait until the POST ends.
1. Verify that the password prompt does not appear.
1. After the service check is completed, remove the jumper.
300 [2615]
==========
To override a password , do the following.
1. Power-off the computer.
1. Remove the access panel.
1. Remove the battery pack.
1. Remove the top assembly (do not disconnect any cables).
1. Connect a jumper to the two pads (R39) at the side of the math coprocessor socket.
1. Reinstall the battery pack.
1. Power-on the computer. Keep the computer on until the LEDs blink and the system locks.
1. Remove the jumper.
1. Press and hold the reset switch, then power-on the computer.
1. Power-off the computer.
1. Replace the top assembly and the access panel.
350, PS/Note 425 [2618]
=======================
Remove the cmos battery 5 minutes
365X, 365XD [2625]
==================
1. Power off the computer.
1. Open the keyboard and lift the right-most section of the insulator sheet.
1. Push out the small door on the right side of the base cover.
1. Apply a short across the Power-On Password Jumper Pads.
1. With the jumper tool in place, power on the computer to clear the password.
1. Remove the jumper and power off the computer.
1. Power on the computer and verify that the password has been cleared.
380-385 [2635]
==============
1. Power off the computer.
1. Turn the computer upside down, loosen the DIMM cover screw, remove the DIMM cover.
1. Then power-on the computer by applying a short across the power-on password jumper pads 315
380XD, 385XD, 380Z [2635]
=========================
1. Power off the computer.
1. Turn the computer upside down, loosen the memory-slot cover screw, and remove the memory-slot cover.
1. Short across the power-on password jumper pads
1. Power on the computer and wait until the POST ends.
1. Reinstall the memory-slot cover, and turn the computer right side up.
i-Series 1400 [2611]
====================
1. Turn off the computer.
1. Unplug the AC Adapter and remove the battery.
1. Remove the keyboard and the thermal plate.
1. Move the password switch (SW2, switch 2) from OFF to ON to bypass the password.
**Note:** SW2 has four switches, the second upper switch (switch 2) is the password bypass/check switch.
Turning the switch to the left (ON position) is "bypass password", the right (OFF position) is "check password".
1. Plug in the AC adapter and turn on the system.
1. While the ThinkPad logo is being displayed, wait for a beep before pressing <kbd>F1</kbd> to enter the BIOS Utility.
1. Select "System Security" from the BIOS Utility main menu and press <kbd>Enter</kbd>.
1. Set the "Power-On Password" setting to "None" to clear the password.
1. Save and exit the BIOS Utility.
1. Turn off the system and unplug the AC Adapter.
1. Move the password switch from ON to OFF to enable the password function.
1. Reinstall the thermal plate and keyboard.
1. Reinstall the battery pack and plug in the AC Adapter.
i-Series 1400/1500 [2621]
=========================
If only the power-on pasword is set, do the following to remove it:
1. Power off the computer.
1. Remove the battery and the AC Adapter.
1. Remove the backup battery (RTC) 20 minutes or use the screw driver to touch the backup battery (RTC) 1 sec.
1. Put back the backup battery (RTC).
1. Power on the computer and wait until the POST ends.
1. Verify that the password prompt does not appear.
390/i Series 1700 [2626, 2627], 390E [2626], 390X / i 1700 [2624, 2627]
=======================================================================
1. Power off the computer.
1. Remove the battery pack and AC Adapter.
1. Remove the backup battery (RTC) for 20 minutes or use a screwdriver to touch the backup battery (RTC) for 1 second.
1. Put back the backup battery (RTC).
1. Power on the computer and wait until POST ends.
1. Verify that the password prompt does not appear.
500 [2603]
==========
1. Power-off the computer.
1. Disconnect all cables attached to the computer.
1. Remove the memory card access panel and memory card (if installed).
1. Power-on the computer.
1. Locate the two pins labeled PAD1-2 on the system board (in the memory card access area).
1. Short the two pins together.
1. Press <kbd>Ctrl</kbd>+<kbd>Alt</kbd>+<kbd>F3</kbd> to access the System Parameters Setup Menu.
1. Press <kbd>Esc</kbd>.
1. Press <kbd>F5</kbd> to reset the parameter to their default values.
1. The System Time, System Date, and Password (if required) parameters need to be set manually.
1. Press <kbd>Esc</kbd>, then <kbd>F4</kbd> to save the values, exit the Setup program, and reboot the computer.
1. If a memory card was removed, power-off the computer and install the memory card.
1. Install the memory card access panel.
510 [2604]
==========
1. Power-off the computer.
1. Disconnect all cables attached to the computer.
1. Remove the memory card access panel and DRAM card (if installed).
1. Power-on the computer.
1. Locate the two pins labeled PAD1-2 on the system board (see 'System Board Connectors').
1. Short the two pins together.
1. Press <kbd>Ctrl</kbd>+<kbd>Alt</kbd>+<kbd>F3</kbd> to access the System Parameters Setup Menu.
1. Press <kbd>Esc</kbd>.
1. Press <kbd>F5</kbd> to reset the parameter to their default values.
1. The System Time, System Date, and Password (if required) parameters need to be set manually.
1. Press <kbd>Esc</kbd>, then <kbd>F4</kbd> to save the values, exit the Setup program, and reboot the computer.
1. If a DRAM card was removed, power-off the computer and install the DRAM card.
1. Install the memory card access panel.
560, 560E [2640]
================
1. Power off the computer
1. Remove the frame
1. Flip the keyboard over as shown in the figure
1. Jumper the two password jumper pads (R364 or R39) located on the system board
1. Power on the computer to clear the password
1. Replace the keyboard and the frame
When replacing the frame, make sure that the frame fits correctly in place. If it is not in place, the click buttons
of the TrackPoint III cannot be pressed.
1. Replace the screws
1. Power on the computer and wait until the POST ends
1. Verify that the password prompt does not appear.
The hard disk password is stored on the hard disk.
560x [2640-560 - 60x, 70x]
==========================
1. Power off the computer
1. Remove the frame
1. Position the keyboard over as shown in the figure
1. Jumper the two password jumper pads (BIT-X) on the system board
1. Power on the computer to clear the password
1. Replace the keyboard and the frame
When replacing the frame, make sure that the frame fits correctly in place. If it is not in place, the click buttons
of the TrackPoint III will not work.
1. Replace the screws.
1. Power on the computer and wait until the POST ends.
1. Verify that the password prompt does not appear
560Z [2640]
===========
1. Power off the computer.
1. Turn the computer upside down.
1. Loosen the DIMM socket lid screw -1- , and remove the DIMM socket lid.
1. Short the power-on password jumper pads (R522).
1. Power on the computer and wait until the POST ends. The password is cleared.
1. Reinstall the DIMM socket lid, and turn the computer right side up.
1. Verify that the password promp does not appear.
1. To reactivate the password, set the password again.
570 [2644]
==========
1. Power off the computer.
1. Remove the DIMM cover on the bottom side of the computer.
1. Short-circuit the two password pads.
1. Under the short-circuit condition, power on the computer and wait until the POST ends.
After the POST ends, the password prompt does not appear. The power-on password is removed.
1. Reinstall the DIMM cover.
765D [9546], 765L [9547]
========================
1. Power off the computer.
1. Open the keyboard, and remove the battery pack and the diskette or CD-ROM drive.
1. Install a jumper on the power-on Password connector on the left side of the FDD connector.
1. Reinstall the battery pack and the diskette drive/CD-ROM drive.
1. Power on the computer and wait until POST ends.
1. Verify that the password prompt does not appear.
1. After the service check is completed, remove the jumper.
770 [9548/49]
=============
1. Power off the computer.
1. Remove the DIMM cover.
1. Short-circuit the two password pads or put the jumper (pads near the top of the cover).
1. Under the short-circuit condition, power on the computer and wait until POST ends.
After the POST ends, the password prompt does not appear. The power-on password is removed. If a jumper has been
used for short the password pads, then remove the jumper.
1. Reinstall the DIMM cover.
[Back to overview.]({% post_url 2009-10-30-bios-passwords %})

View File

@ -0,0 +1,65 @@
---
title: Toshiba notebooks
layout: default
created: 2008-07-21 19:59:58 +0200
updated: 2008-07-21 19:59:58 +0200
toc: false
tags:
- know-how
- hacking
- hardware
- bios
- passwords
- toshiba
---
I found three different ways for bypassing the password-check on a Toshiba-notebook. I had no chance to test them, so I
can't promise they will work.
Holding SHIFT
=============
Hold down the **left SHIFT-key** upon bootup - this should skip the password-check on most notebooks and on some
desktop-systems.
KeyDisk
=======
For this one, you will need an empty 3 1/2" disk (720KiB or 1.44MiB), another computer (to which you have full access)
and a good Disk-Editor (e.g. [Hex-Workshop](http://www.bpsoft.com/)).
This method should work on ALL Toshiba notebooks.
1. Bootup the other computer, install and launch the Diskeditor.
1. Insert the disk and open the **second sector** of the disk.
1. Change the **first five Bytes** of the second sector of the disk (the first sector is the boot sector) to: `4B 45 59 00 00`
1. Write the changes to the disk. Now you have a KeyDisk!
1. Remove the disk and insert it into the drive of the notebook computer.
1. Start the notebook in Boot Mode (push the reset button).
1. Press <kbd>ENTER</kbd> when asked for password.
1. You will be asked to set password again. Press <kbd>Y</kbd> and <kbd>ENTER</kbd>.
1. You should now see the BIOS configuration where you can set a new password.
Loopback-Connector
==================
![]({{ site.url }}/assets/db25m.gif)
This is a 25pin male connector which fits onto the printer port. You have to short-circuit the following pins:
* 1-5-10
* 2-11
* 3-17
* 4-12
* 6-16
* 7-13
* 8-14
* 9-15
* 18-25 (optional)
After plugging the modified connector onto the notebook, the BIOS shouldn't ask for any password.
[Back to overview.]({% post_url 2009-10-30-bios-passwords %})

View File

@ -0,0 +1,47 @@
---
title: Shameless Rip-Off by pc-doctors.com
layout: default
created: 2010-01-13 02:13:02 +0100
updated: 2010-04-02 00:27:30 +0200
toc: false
tags:
- know-how
- hacking
- hardware
- bios
- passwords
- ripoff
- copycat
---
I recently found some of my manuals to remove BIOS passwords in a very familiar design on a
[totally foreign site](http://www.pc-doctors.com/other/free-info/):
<img src="{{ site.url }}/assets/ripoff-pcdoctors.png" alt="" width="600" />
This page is from 2006.
Now take a look at my old homepage:
<img src="{{ site.url }}/assets/original-riddick.png" alt="" width="600" />
I have SVN logs going back till December 2004 where I have started working on these pages. Also all pages behind the
links are 1:1 copies of my contents - just with another background and text color.
Being confronted with the facts, *Roger Brehm* played dumb and said he got that info from one of his "techs", then he
tried to shit me about my photos being b&w and his being colored (a filter in my CSS which only kicked in if you were
surfing my site with Internet Explorer) and a missing copyright information on my pages. As if this would give him the
right to copy everything and publish it under his name.
Of course, he didn't even put a link to my site on his pages. Not even after I asked him to do so.
If anyone wants to pay him a "nice" visit ... [Google him](http://google.com/search?q="Roger+Brehm"+hampton)
<p><div class="notetip" markdown="1">
**UPDATE:** Looks like those pages are offline for now. You can still catch a view from the
[Google Cache](http://google.com/search?q=cache%3Ahttp%3A%2F%2Fwww.theonlypcdoctor.com%2Fother%2Ffree-info%2Findex.htm).
</div></p>
[Back to overview.]({% post_url 2009-10-30-bios-passwords %})