| Ludicrous Meme ★ |
[Nov. 12th, 2009|09:41 am] |
| [ | Tags | | | meme | ] |
| [ | mood |
| | kekeke | ] |
Thank you tupperwarecrisp for these wow lulz questions!

1) Would you like to live in a world where everyone has Muppy's creepy face? 2) Would you rather punch Ethan Waber or feed him to De Ragan? Or something completely different? 3) If you could make a Blastia, what would it do? 4) Would you like to be Gunnar's superhero sidekick? 5) Would you rather marry Muppy, or push Isolde off a cliff?
( Answers under the <strike>carnage</strike>...cut! ) |
|
|
| Medical Update: The Whole Story |
[Nov. 11th, 2009|12:17 pm] |
So I saw the Mrs. this morning and she's doing as good as one can expect, certainly in good spirits. Her Aunt stayed in her room last night (and I thought I slept bad! What a trooper) and Mom-in-Law is back down, so she has company, which is both good for her spirits, but I think it also may help her results.
As I've said before, but I don't think I can say enough, thank you SO much for all your support. The Mrs. has been reading your comments and she is very moved by your love and kindness, as well as the private messages for support you have all sent. I don't think a better word can be used but, I love you guys! She has also given me the green light to talk about her condition.
Back when Mrs. Weer'd was 16, and we were just good high-school buddies (We've known each other since 7th grade, tho we didn't start dating until we were both in college) she had a seizure. Doctors gave her an MRI and they found a lesion on her right temporal lobe.
We have no idea where the lesion came from. Typically it steams from a head injury, but Mrs. Weer'd has never sustained one. However it got there, this was the first sign that she had Temporal Lobe Epilepsy. http://en.wikipedia.org/wiki/Temporal_lobe_epilepsy
She immediately started medication, and essentially resumed a normal life. Over the past years there have been a few occasions where she has missed a few doses of her medication which have resulted in further seizures. This simply showed us that the medication she was on was doing a good job.
That was until a few years ago. Above when I say "Seizure" I was referring to "Grand Mal" or I guess what is now known as: "Tonic–clonic seizures" http://en.wikipedia.org/wiki/Secondarily_Generalized_Tonic-Clonic_Seizures
This is generally what people think of when they think of Epilepsy. Thrashing, making noises, foaming at the mouth ect. I assure you they are quite awful, and I tell the Mrs. that I fully understand why people used to attribute them to demonic possession. It's far worse when the person having the seizure is one you love.
But that is not the ONLY kind of seizures there are. Mrs. Weer'd's Grand Mal seizures are thankfully still well controlled by medication, but she has started having what are called "Complex Partial Seizures", which can be essentially described as a loss of consciousness or an altered state of consciousness. These can be hard to spot, and even when they first started happening we argued about what exactly was taking place.
These are different from person-to-person, but Mrs. Weer'd generally just blanks out and stares for a short time (maybe 30 seconds to two minuets) she may walk around, she may play with an object in her hand. After the seizure is over she is often confused for a short period and will often have her mood altered. She's had these in the middle of dinner or at parties and only I noticed. Especially since she is quite and her expression often looks deep in thought.
We have been seeing a great doctor about this, and we have since tried several new drugs. They had no effect on the epilepsy, and many times the side effects made things worse for her.
We were a little surprised when the Doctor mentioned she met the criteria for surgery.
We had only heard about surgery for people who were debilitated with the disease. Mrs. Weer'd is a very successful scientist, and besides the seizures restricting her from driving (She was allowed to drive when the seizures were controlled) she was living a normal life.
That used to be the way they handled epilepsy surgery, but new studies have shown some correlation to persistent seizures and worsening of the condition, and overall Surgery to applicable candidates is highly successful.
The Doctor's words: "Why force them to live like that if they can be helped?"
So that brings us up to speed now. So why is she in the hospital?
Well since we're talking brain surgery here a vast number of tests must be performed to confirm the mechanics of her case of epilepsy, and the workings of her brain to be sure if surgery is the right step.
She's done a few less invasive tests before. Now she's in the hospital for constant EEG monitoring. Essentially she's got her head covered in electrodes (They don't have to cut her hair for this) and now her head it wrapped with a protective gauze which looks like a comical hockey helmet (Yes I have a picture...no she won't let me post it no matter how much I beg).
They have tapered off her medication, and are sleep depriving her. All in hopes that she will have multiple seizures while under monitor. The data, and video recording (yep she's on camera 24/7 as well as microphone) will be analyzed to determine where her seizures start in her brain and what is causing her epilepsy (and point a finger at how we can stop it).
Because she's at high risk for a grand mal seizure she's essentially confined to bed, and may only use the bathroom with a nurse standing outside the door. She's got a nest of wires all over her so she's not very comfortable, and she's tired and the food sucks.
Yep, this little hospital stay doesn't suck, it FUCKING sucks. Still its for a good cause, and it would be a dream for her to be seizure free and without medication.
So far she had one seizure in the admission office (Just 2 hours shy of being wired up!!! DOH!!!) and one while under full monitor. (Both Complex Partial), and they gave her a PET scan (I guess the faulty part of the brain has a lower metabolic rate than the healthy tissue...until a seizure where the tissue is excited).
Off her meds I suspect she'll be having grand mals which won't be fun for anybody, but she's in the best place in the world to have them.
She's in the hospital until they have enough data to discontinue the monitoring (They say 3 seizures that show very consistent results or 5 where the results might not be as consistent is good) So we're wishing the most and rapid seizures on her...kinda odd.
As for me, I'm holding in there. If she's having seizures in the hospital I'll be needing to be close by her when she gets out just to make sure she doesn't have any grand mals which could injure her.
I'm also glad to finally be talking about it, and I would like to make one of the subjects for discussion on this blog be epilepsy.
So if you have any questions or have some interesting stories to share or saw something in the news post it in the comments, or send it to me in a message or email (weerdbeard gmail).
As I've said before this is a well-known disease, but often misunderstood by many who don't have contact with an epileptic (or who have contact but are unaware).
Finally I want to close with more thanks for all of your support and love. You are all wonderful weather I know you in real life, or have only talked to you through the internet.
I'll keep you posted on Mrs. Weer'ds hospital stage, and any further relevant information!
Arrrrrr
-Weer'd Beard |
|
|
| SCORE!!!! |
[Nov. 11th, 2009|12:05 pm] |
As you may know, my days have been fairly shitty (Serious post on that coming up)
Still the little things in life do cheer me the hell up (BTW check out the laughing weather woman video, and Colleen's vid of the Capibara in the comments! That shit rules)
Appears I've upset Laci to the point of more self-destruction. http://lacithedog.blogspot.com/2009/11/response-to-weerd-beard.html
First up again with the silly CCW badge (Those are so funny, I've been meaning to get one...of course I'd just clip it to my range bag. Actually wearing something like that could easily land you in hot water)
Blog Reposted without editing: "Jeesus, you should stop sucking donkey dicks and calling it animal research. Especially if you're going to deep throat them.
Although, sucking off donkeys is a much better use of your time than wasting bandwidth with your moronic "opinions".
BTW, I didn't know that guys could do the "mudshark" although I have heard shit about Gerbils. Shoving a mudshark up your arse really doesn't qualify you as an Ichthyologist.
Anyway, I've always thought that Weer'd Beard meant that you were a twat ("He knew full well a woman hath no beard, yet something rough and hairy had appeared") and you just proved it. Especially after seeing a picture of you.
Or maybe you're a total dickhead looking at your pic.
BTW, isn't Mike W. 45limpdick?
Sorry, asshole, but I'm bang on. Your problem, 45limpdick, is that I am right and you are a cretin.
You just can't live with it. "
And her intial quote of me is correct. When the Mrs. is feeling better and I have some free time (Pretty much I leave on the 7am train in the morning and come in my door at 9pm at night...and if I don't sleep immediately I really should) I do have a SCORE of quotes from hateful bigots like Lacy, MikeB, Paul Helmke, and Mayor Daily, among others (and I'm finding new ones every day) that I think need to be aired just to show the wide scope of the anti-gun front and to show their indifference to the loss of human lives in their single-minded quest to ban and restrict guns from the law-abiding.
So Keep digging Laci, I'll give you plenty of press over here. (Tho in the comments, if this shit is a little to vile for you I can put it under an LJ cut in the future...or I can simply link the post without repeating text. Your opinions matter here at Weer'd World)
Have a good day, and don't buy into the anti-gun lies!
Arrrr
-Weer'd Beard |
|
|
| Perspective |
[Nov. 11th, 2009|06:30 am] |
I think you all know I'm having a bit of a tough time right now, and of course Mrs. Weer'd is having even less fun than I.
But I'd like to take a moment on this special day and wish all our men and women in the armed forces a happy Veteran's Day.
The things these brave people do to protect our freedom should put a lot of things in perspective.
They don't have "Research Biologist Day" or "Real-estate Lawyer Day" and there's a reason for that.
Thank you for your service.
-Weer'd Beard |
|
|
| Morning All |
[Nov. 11th, 2009|05:36 am] |
Slept like shit, but the show must go on!
I'll probably crank out another update during my lunch break. The Mrs. thanks you all for your support.
I love you guys!
But let's not be all serious. Looks like the Gregory Brothers did what I've been looking for and Remixed Balloon Boy Puking...among other people doing stuff!
I'll be back here later!
TTYL! |
|
|
| Update #2 |
[Nov. 10th, 2009|12:40 pm] |
First up, thank you all for your support, and Mrs. Weer'd thanks you too. She read your comments in the hospital last night and was visibly moved by the kindness of strangers.
She's not having a lot of fun, and didn't get any useful sleep last night (That's actually not a bad thing, but more on that in the full-disclosure post) also she's been poked and prodded well past her threshold.
I still can't give all the details because this isn't my health and body I'm talking about, and right now Mrs. Weer'd isn't in the greatest of places to easily OK a post I'll be penning.
I will just say for further clarifications, she does not have a life-threatening condition, but in fact something we've been dealing with for a number of years, and it's likely a disease you've heard about, but probably know very little about it, and her current stay is to collect data on her condition so hopefully we can resolve it with a meaningful treatment.
Again, PM me if I've only raised your concern. Otherwise your questions will be answered once things calm down.
I just Got off the phone with Mom-in-Law who was with her all day yesterday and stayed at the house last night. She told me things are going well, and she said the Mrs. was in better spirits when she left for home. Mom-in-Law will be back tomorrow, and likely will have Aunt-in-Law (Better name would be Mom-in-Law II as those sisters are very close).
We've been getting a ton of support from family, and your support has been deeply appreciated. Thank you all.
Arrrr
-Weer'd Beard |
|
|
| The ACPI Embedded Controller |
[Nov. 10th, 2009|09:57 am] |
Of course, the event model I described before is far too simple to be worthy of a place in the ACPI spec. At the most basic level, there's more possible events than there are GPEs to attach them to, so there's a need for some further complexity. This manifests itself in the form of the ACPI embedded controller (EC).
The EC is typically a small microprocessor sitting on your motherboard, often implemented in the same hardware as the keyboard controller. It shares a lot in common with the keyboard controller - on PCs it'll usually appear in system io space, with one register for writing a command or reading a status, and a second register for passing data back and forth[1]. There's 256 registers available, so a typical interaction might be to write the READ command (0x80) to the command register, write the EC register address to the data register and then read back from the data register to get the EC register contents.
The embedded controller will often be responsible for tracking information about the hardware, such as the temperature. Attempting to read the temperature through ACPI will execute an ACPI method - in the case of the temperature being monitored by the embedded controller, this method will attempt to read from an EC register. The EC driver then performs the read and returns the result, which gets converted into decidegrees kelvin and passed back to whatever made the temperature query.
But, as mentioned above, the EC also generates events. These may be in response to a user initiated event like a hotkey press, or may be triggered by some change in hardware state like a thermal trip point being passed. The embedded controller will then raise a GPE.
Unlike normal GPEs, the EC GPE is not handled by looking for a _Lxx or _Exx method. Instead, the ACPI tables provide information about the GPE that the EC is using. This may be in the form of a _GPE definition in the EC object in the main ACPI tables, or alternatively may be provided in an ECDT (Embedded Controller Descriptor Table), an optional table that provides all the EC information. In either case, the OS knows which GPE will be triggered by the EC. It then installs a handler that will be called whenever the EC raises that GPE.
Things get a touch confusing at this point. The first thing this handler does is read the command byte, which functions as a status byte on reads. It then checks whether the SCI_EVT bit is set. This informs the system that the GPE was in response to a hardware event, and so the EC handler writes a query command to the EC command register and then reads back a value between 0 and 255 from the data register. This is then mapped to a _Qxx method, with xx representing the number of the EC event read from the data register. Like the _Lxx and _Exx methods, the _Qxx method is then executed.
The problem with all of this is that the EC isn't that fast. When a byte is written to it, it's necessary to read back the status byte and check whether the IBF bit is set. This is set when the OS writes a byte to the data register, and cleared once the EC has processed it. The straightforward way to deal with this is to poll the status byte until the bit is cleared, and then write the next byte, but polling is slow and wastes CPU time. The EC can instead be set to interrupt mode, where it'll fire a GPE when the IBF bit clears.
The EC has one additional function. The ACPI spec allows for an i2c bus to be implemented through the EC, with EC registers mapping to i2c registers. The observant among you will realise that this means that there's an indexed access protocol being implemented on top of indexed access hardware, which is more layers of indirection than seem sane. For additional humour, this is usually only used to add support for ACPI smart batteries. ACPI batteries are generally abstracted behind a set of ACPI methods that provide information. Smart batteries instead speak i2c directly to the OS[2] for no real benefit. Linux handles these devices fine, and while the chances are you probably don't have one, the chances are also that if you do you haven't noticed.
The final quirk of ACPI events is that there's yet another means of delivering events. The term "fixed feature" is used to describe an ACPI device that isn't described in the ACPI tables. A power button may be implemented as a fixed feature device rather than a normal ("control method") device. This is indicated by a flag in the fixed feature block. Hitting a fixed feature power button will generate an ACPI interrupt, but no GPE. Instead the OS has to read the fixed feature block and note that the power button flag is set there. It then notifies userspace appropriately. Sleep buttons can also be implemented this way, but other devices will be in the normal ACPI tables and will generate either GPEs or EC events.
[1] On my laptop, these are ports 0x62 and 0x66 - compare to the keyboard controller's use of ports 0x60 and 0x64
[2] As directly as indirection via the EC can be... |
|
|
| ACPI general purpose events |
[Nov. 9th, 2009|10:06 pm] |
ACPI is a confusing place. It's often thought of as a suspend/resume
thing, though if you're unlucky you've learned that it's also involved
in boot-time configuration because it's screwed up your interrupts
again. But ACPI's also heavily involved in the runtime management of
the system, and it's necessary for there to be a mechanism for the
hardware to alert the OS of events.
ACPI handles this case by providing a set of general purpose events
(GPEs). The implementation of these is fairly straightforward - an
ACPI table points at a defined system resource (typically an area of
system io space, though in principle it could be something like mmio
instead), and when the hardware fires an ACPI interrupt the kernel
looks at this region to see which GPEs are flagged. Then things get
more interesting.
The majority of GPEs are implemented in the ACPI tables via methods
with names like _Lxx or _Exx. The xx is the number of the GPE in hex,
while the leading _L or _E indicates whether the GPE is level- or
edge-triggered. If an ACPI interrupt is fired and GPE 0x1D is flagged
as being the source of the interrupt, the ACPI interpreter will then
look for an _L1D or _E1D method. Upon finding one, it'll execute
it. What this method does is entirely up to the firmware - on most HP
laptops, GPE 0x1D is hooked up to the lid switch[1] and so executing
it will send a notification to the OS that the lid switch has changed
state. The OS will then evaluate the state of the lid switch
(generally by making another ACPI query) and send the event up to
userspace.
How does the lid end up triggering GPE 0x1D? Things get pretty
hardware specific at this point. Intel motherboard chipsets have a set
of general purpose io (GPIO) lines that can, for the most part[2], be
used by the system vendor for anything they want. For a lid switch,
one of these lines is hooked to the switch and the BIOS configures the
GPIO as an input. Pressing the switch will cause the GPIO line to
become active. The GPIO lines are mapped to GPEs in a 1:1 manner,
though with an offset of 16 - ie, GPIO 0xd will map to GPE 0x1d. If
GPIO 0xd becomes active, GPE 0x1d will be flagged and an ACPI
interrupt sent. The ACPI code will then do something to quash the
interrupts, such as inverting the polarity of the GPIO[3], as well as
send the notification to the OS.
Why are the GPIOs offset by 16 relative to the GPEs? The lower 16 GPEs
(again, talking about Intel hardware) have pre-defined
purposes[4]. These range from things like "Critically low battery" to
"PCIe hotplug event" down to "This device triggered a wakeup". And the
latter is what I'm most interested in here.
Various pieces of modern hardware can be placed into power saving
states when not in use. The problem with this is that the user
experience of having to turn on hardware before you can use it is not
a good one, so in order to make this the default behaviour we need the
hardware to tell us that something happened that requires us to wake
the hardware up.
There's something of a chicken and egg problem here, but thankfully
most of the relevant modern hardware has out of band mechanisms to
tell us about things going on. The PCI spec defines something called
Power Management Events (PME), which are driven by an additional
current that's supplied to the hardware even when it's otherwise
turned off. On plug-in PCI Express cards, firing a PME generates an
interrupt on the root bridge and a native driver can interpret that,
but for legacy PCI devices and integrated chipset devices the
notification has to come via ACPI.
The example I've been working on is USB. It's a good choice for
various reasons - firstly, there's already support for detecting when
the USB controller is idle. Secondly, modern USB host controllers have
support for generating PMEs on device insertion, removal or (and this
is important) remote wakeup. In other words, as long as the USB bus is
idle we can power down the entire USB controller. If the OS tries to
access a USB device, we'll power it back up. If the user unplugs or
plugs a device, we'll power it back up. If a previously idle device
suddenly responds to some external input, we'll power it back up. And
it's all nicely invisible to the user.
How does this work? The controller retains a small amount of power
even when nominally pwoered down. This is used to keep the detection
circuitry alive. When it receives a wakeup event, it asserts the PME
line. The chipset detects this and fires a GPE. The OS runs this GPE
and receives a device notification on the ACPI representation of the
USB controller, telling us to power it back up. We do so and process
whatever woke us - if the bus then goes idle again, we can power down
once more.
The astonishing thing is that this all works. The only problem we have
is that it relies on the machine vendor to have provided the ACPI
methods that are associated with the GPEs. If they haven't, we can't
enable this functionality - even though the hardware is capable of
generating the GPEs, we have no method to execute to let us know which
device has to be woken up. The GPE is never answered, we never
acknowledge the PME and the hardware keeps on screaming for attention
without getting any. And, more to the point, it never gets powered up
and your mouse doesn't work.
There's a pretty gross hack to deal with this. In general, we know
what the GPE to device mappings are - they're pretty static across
Intel chipsets, and while AMD ones can be programmed differently by
the BIOS we can read that information back and set up a mapping
ourselves. This trick also comes in handy when some vendors (like,
say, Dell) manage to implement one of the GPE events
wrongly. Everything looks like it should work, but the method never
sends a notification because it's buggy. In that case we can
unregister the existing method and implement our own instead.
This code isn't upstream yet, but patches have been posted to the
linux-acpi mailing list and with luck it'll be there in the 2.6.33
timeframe. My tests suggest about 0.2W saving per machine, which isn't
going to save all that many polar bears but seems worth it anyway.
[1] _L1D = lid. Sigh.
[2] There's a few that are reserved for specific purposes
[3] So where before it had to be high to be active, it now has to be
low to be active - this means that it'll now trigger on the switch
being opened rather than closed, so you'll get another event when you
open the lid again.
[4] You can find a list in the documentation for the appropriate ICH
chip - the relevant section is "GPE0_STS" under the LPC interface
chapter. |
|
|
| OH WOW |
[Nov. 10th, 2009|10:44 am] |
| [ | Tags | | | inane | ] |
| [ | mood |
| | SPOON! | ] |
|
|
|
| Looking to the past |
[Nov. 9th, 2009|03:54 pm] |
It’s an oft-voiced suggestion that rather than looking at the bad things that happen in our communities, we should focus on the good things. There’s a number of highly successful geek women already – should we not be concentrating on encouraging more of them, rather than scaring people away with tales of thoughtlessness, discrimination and outright abuse?
Let’s draw an analogy. One day, a $20 charge appears on your credit card. You didn’t make it. You report it to your credit card company, who assure you that they take fraud seriously and then do nothing. A few days later, another $20 charge. Your credit card company tells you that such events are rare, unrepresentative of the general credit card experience and continue to do nothing. A week afterwards, another charge. This time your credit card company describes how they’re planning on implementing a brand new anti-fraud system, but that this is unrelated to any events that may currently be occuring and will give no details as to when it’s going to be rolled out. And proceed to ignore any further reports you make about fraudulant transactions.
Would you stay with this company? Or would you take your business somewhere else?
The problem with the “Let’s look to the future rather than spending too much time getting stuck in the present” argument is that it assures people that things will get better without providing a roadmap for getting there. It does nothing to validate their concerns or make them feel wanted within a community. It assumes either that people will stick with a community that doesn’t respond to their complaints, or that it’s possible to construct a community that’s welcome to an assortment of genders, ethnicities and lifestyles without any of those people being represented in the first place.
Ignoring people’s concerns is an excellent way to drive them away from your community. Doing so because of a potential future that’s probably conditional on you having those people in your community is short sighted and self defeating. Ignoring the present doesn’t benefit the future. It benefits the status quo.
(Originally posted here) |
|
|
| Not Feelin' great. |
[Nov. 9th, 2009|12:03 pm] |
Dropped the Mrs. off at Mass General for a scheduled appointment. This is nothing major, but she'll be in for a few days and it's part of an ongoing issue we're working on.
I'll give you more details later. I was going to write about it this weekend, but I just wasn't feeling it. Stay tuned.
Overall things are going well for us, It just made me very sad to drop her off in the hospital then go to work. I'll be visiting her tonight and her Mother has come down and will be staying at our place for a few days.
Just really typing this because it makes me feel better that there are ears out there that will listen.
Thanks all!
-Weer'd Beard
PS: if you're climbing the walls in anxiety just PM me for details. |
|
|
| Have this Kind of Day |
[Nov. 9th, 2009|06:58 am] |
I don't speak German...I really don't think I have to.
Have this kind of Monday! You Deserve it!
Arrrrr
-Weer'd Beard |
|
|
| The Alphabet Designed for Smilies |
[Nov. 9th, 2009|05:20 pm] |
Thank you India!
ಔ ಕ ಖ ಗ ಘ ಙ ಚ ಛ ಜ ಝ ಞ ಟ ಠ ಡ ಢ ಣ ತ ಥ ದ ಧ ನ ಪ ಫ ಬ ಭ ಮ ಯ ರ ಱ ಲ ಳ ವ ಶ ಷ ಸ ಹ ಾ ಿ ೀ ು ೂ ೃ ೄ ೆ ೇ ೈ ೊ ೋ ೌ ್ ೕ ೖ ೞ ೠ ೡ ೦ ೧ ೨ ೩ ೪ ೫ ೬ ೭೮೯ ಂ ಃ ಅ ಆ ಇ ಈ ಉ ಊ ಋ ಌ ಎ ಏ ಐ ಒ ಓ
SERIOUSLY!
ಠ_ಠ is just the beginning! ಈ_ಈ BRB curling eye lashes!
|
|
|
| Argument for the FiveSeveN |
[Nov. 8th, 2009|08:51 am] |
Because of the Fort Hood shooting, a lot of people have been talking about the pistol used, the controvertial FNH FiveSeveN Pistol.
I say controversial because anti-gun bigots talk about it's armor piecing capability. (There is data that the high-speed small bullet used in the pistol will defeat soft armor better than most handgun ammo, but FNH still felt the need to make special armor piercing ammo for the pistol which is banned for civilian sale. There is an anti-gun video I believe filmed by the VPC, where a police officer used his badge to buy the ammo used in the test) And the fact that a standard sized magazine holds 20 rounds.
People like myself find the gun controversial because it used a VERY small bullet which has dubious stopping power, and it comes in a bulky gun that is pig ugly.
Still Jeff Quinn makes a GREAT point. If you have a physical condition where recoil and pulling long stiff triggers may be a problem, like arthritis, the FNH FiveSeveN might be a good choice. It's ballistically similar to .22 WMR (AKA .22 Magnum) which is hardly a powerful round, but it offers better penetration and muzzle energy than the smaller cartridges like .22 LR, .32 ACP, or .25 ACP, and since the gun holds 20+1 and has a very mild recoil you can place multiple follow-up shots to improve its fight-stopping ability.
I must say I was looking at a FiveSeveN in a Gun Shop yesterday and was sneering at it in contempt...also I pointed out to a fellow patron how stupid I thought the FNH P90 carbine is (I still think that's true), still I may be convince there is more practical value to the FNH FiveSeven.
More here: http://www.gunblast.com/FN-FiveseveN.htm
Arrrrr
-Weer'd Beard |
|
|
| navigation |
| [ |
viewing |
| |
most recent entries |
] |
| [ |
go |
| |
earlier |
] |
| |
|
|