"Keep your friends close, but your enemies closer." -Michael Corleone

I’m very close to completely converting all of my old physical C64 disks into D64 disk images, a project I started roughly 10 years ago — not that it takes 10 years to convert ~600 floppies into D64 disk images (it only takes a minute or two to do a disk), but there have been a lot of stops and starts. Along the way I’ve used three of four different methods (x1541 cables, the FC5025, the Ultimate 1541, and my current method of choice, the ZoomFloppy) and experimented with several different tools and methods to ensure that I’m getting the most data possible from these old floppies.

Now, most of the floppies I’m capturing look like this:

In my digital collection, that’s “Disk 009,” and I’ll end up with two files (009A and 009B, one for each side). But occasionally, I run across old disks of mine that look like this:

Not all glue was created equal, and many of the labels I used for numbering disks have dried up and fallen off, never to be seen again. This bothers me to no end because now I don’t know what to call this disk image. Right know it’s called “Unknown-034.”

While rummaging through these old virtual warez I ran across a disk labelled “DCMR.” DCMR stands for “Disk Catalog Manager/Reporter.” I vaguely remember using it in the mid-80s. After converting the disk over to a D64 file I loaded it up in an emulator and found that not only did I apparently use it extensively, but that it contains a nearly complete list of every program from every disk. Hey, this could be useful!

The first thing I did was make backups of my old lists and put them on the same disk as DCMR using DirMaster by Style. (If you do anything with D64 disk images, you should download DirMaster immediately. It’s an invaluable tool that I rely on for cleaning up disk images and moving files from one image to another.)

With all the files on one disk, I loaded up DCMR…

…and was able to search for the first game on that mysterious disk. Apparently, this was originally disk 381!

Wahoo! One mystery solved, and I plan on using this newly discovered data to figure out what the rest of those disks with missing labels originally were. Man, this is awesome!


Similar Posts:

Our neighbors, quite selfishly, have placed padlocks on their gates that surround their pool. You cannot lock up water, my friends! You are depriving us, your neighbors, from our right to swim in that pool as we once did while your house was on the market!

Mason though, the crafty one that he is, figured out the combination to the padlock. While our neighbors are out of town for the week, Mason managed to get the padlock open. We have been kept dry by the man for too long now. YOUR REIGN OF TYRRANY HAS ENDED!

And, while the neighbors are away, a good time swimming was had by all. Happy Fourth of July!

(PS: We actually got permission to swim in the pool while our neighbors were out of town, but this version sounded a lot more exciting.)


Similar Posts:

I read last night that yesterday was the 25th anniversary of Tim Burton’s Batman, released in (obviously) the summer of 1989. I am not a “comic book guy,” but I do remember the movie’s premiere quite well.

Superman, the motion picture starring Christopher Reeve, hit theaters in 1978. Not longer after we had Superman battling General Zod in Superman II, Richard Pryor in Superman III, and Nuclear Man in Superman IV. Somewhere in the middle of all that Supergirl fought her way through a terrible film. The popularity of those movies didn’t spawn a ton of other films starring comic book characters.

In the late 80s, rumors began circulating of a new Batman film. I had never (and still haven’t) read a Batman comic in my life, so all I knew of the Caped Crusader came from the campy 60s television show starring Adam West. All I knew was that this new Batman film was being directed by Tim Burton, who I knew from Beetlejuice and Pee-Wee’s Big Adventure. Based on those films, I had NO idea what to expect.

Batman fever was in full pitch. Jeff, Andy and I were all working down the street from Taco Bell at a baseball field concession stand. After work the three of us would often swing by Taco Bell for dinner. With the purchase of a large drink you could get a collectible plastic Batman cup (see above). All the employees wore black t-shirts with Batman logos on them. Batman was everywhere even before the movie came out.

I too wanted a Batman shirt, so I picked one up at the local flea market. It was a bootleg shirt so the logo looked “mostly” like the Batman insignia, but not exactly right. The t-shirt was white until I washed it with a red pair of shorts, which turned my white Batman shirt pink. All the girls I knew were jealous; none of the guys I knew were.

On opening night, Andy, Jeff and I all went to go see Batman at the Yukon movie theater. (And yes, I wrote that pink shirt.) The movie was a fantastic mix of fun, action, and drama. By the end of the night all of us had experienced the new Batmobile, a wonderfully sadistic Joker, and the following image:

Burton’s Batman film led to several sequels, and (in my opinion) the success of the franchise helped launch several other comic book based franchises and, in a bigger scope, helped mesh nerd culture with pop culture.


Similar Posts:

After listening to Zerbinator’s new 80-89 Podcast (which sounds like it was recorded on cassette — and I mean that in a good way!) I went out to the garage to dig out my own box of cassette tapes.

I already went through this box once a few years ago. The tapes that are left consist of (a) ones I recorded off the radio, or (b) albums released by local bands that never made it to CD.

After digging through the tapes for a few minutes, I went back back out to the garage to see if I had kept one of my old cassette decks. Of course I did. This Kenwood will do nicely!

Using a simple RCA cable/splitter, I hooked the old cassette deck directly into my computer. I’ll be using Audacity to record the cassettes and convert them to mp3, with a couple to plug-ins to do things like remove hiss.

The best part about this project is I can work on it while I’m working from home. All I have to do is toss in a cassette, press play (on the deck) and record (on the computer) and continue working. And, bonus, I get to listen to music all day long!

If you love the awesome 80s and would like to listen to the first cassette, click here!v


Similar Posts:

A few of my video game friends and a lot of my non-gaming friends have sent me links to this news story about Michael Thommason who just auctioned off “the largest video game collection” (per the Guiness Book of World Records) for $750,250.

News sites get excited when they hear the words “biggest” or “best” or “fastest”. Nobody wants to read about the thirteenth largest video game collection being sold. Of course thanks to the internet, our boundaries have grown larger. When I was in high school it was enough to have the fastest car in town. Today you have to have the fastest car on Facebook. Or at least say it’s the fastest.

I’m no expert when it comes to buying or selling bunches of things in a single lot, but I do know two things about it. The first is, when it comes to price, aim low. With a little rounding, 11,000 games selling for $750k comes to $68 per game (not including shipping and/or renting a box truck to go pick up your new collection).

According to the auction itself, the seller has several complete collections. The first one that caught my eye was the Atari 7800, mostly because I know it’s a fairly small collection (just over 80 games). I went to PriceCharting.com and checked their list of Atari 7800 games. Looking at the loose cartridge prices, there are only three games that sell for more than $68. Most5 of them sell for much less than that. In fact, over a dozen of the games can be picked up for less than $5. I’m not just picking on picking on the Atari 7800. Most disc-based systems have dozens if not hundreds of games that sell for a penny each on eBay. For every 9 games in that collection that are worth a penny each, there had better be a 10th one that sells for $671 to get that average price per game back up.

That brings me to my second point. Nobody yet has paid that price. Yes there was an auction, yes there were bidders and yes the auction ended with a bid of $750,250… but until somebody shows up with a dump truck full of money it hasn’t technically sold. I have dealt with “buyer’s remorse” from people on eBay who have bought things from me for a dollar. I’m not saying someone who would bid three-quarters of a million dollars for a bunch of video games might back out on the deal, but it’s likely possible.

Although nobody has identified the buyer yet, I hope he does end up paying for the auction and enjoys his new game collection. We’ll see if that happens.


Similar Posts:

Last night for Father’s Day, Susan, Mason and I were invited to attend dinner at “Morgan’s Restaurant,” which looked suspiciously like our dining room. Susan helped cook some of the food, but once that was done Morgan was the only person allowed in the kitchen.

The meal began by Morgan (owner, cook, and only waitress of this restaurant) brought out some chips, queso and salsa for us to snack on.

After taking our drink orders, Morgan handed us a menu…

…and returned a few minutes later to take our order.

I should point out that the menu had multiple pages: one for drinks, one for appetizers, one for the main courses, and one for desserts. While we waited for our food to arrive I found a contemporary Spanish music station on Pandora that sounded amazingly like the background music played in many of the Mexican restaurants we visit.

I ordered the nachos and a chicken soft taco, and before long this appeared in front of me!

Everyone else got their orders shortly after. I then noticed Morgan sitting at the table which I thought was pretty rude for a waitress to do but she then explained that now she was Morgan “our daughter” and not Morgan “the restaurant owner” so that made it okay.

After we were done eating it was time to order the dessert. Morgan (the waitress) brought the menu back out and I ordered the ice cream with a sugar cookie stuck in it. Surprisingly the dish arrived exactly as described.

Finally, Morgan brought us our check. She also conveniently brought Susan a credit card.

While Morgan ran our credit card, Mason donned his dinner jacket and informed us that he was, in reality, a well-dressed busboy. He began clearing the table.

My only real complaint about the restaurant was that at some point during dinner our busboy got shot.

Just kidding — that’s Kool-aid.

Thank you guys for the best Father’s Day dinner ever. The food and service were excellent. I will remember this meal for many years.


Similar Posts:

While I don’t want to spend too much time on the topic, here’s a quick little post explaining why I would never ever buy a car from the MINI of Peabody dealership.

I’ve had a gmail address for a long time — I got it back when gmail was invite-only, in fact. Shortly after signing up for gmail I began getting spam e-mails from a Mini Cooper car dealership located in Peabody, Massachusetts named Mini of Peabody. Just to be clear: I have no interest in Mini Coopers, have never owned one, never plan to, and never signed up for Mini of Peabody’s e-mail newsletter.

The monthly e-mails from Mini of Peabody are big and colorful and hard to miss. I deleted the first one and the second one and the third one. The e-mails suggested that I add sales@minipeabody.com to my address book to ensure that I received their e-mails, but instead I did the opposite and added sales@minipeabody.com to my spam list. I also clicked on the “report this e-mail as spam” button in gmail. Still, somehow, the e-mails get through.

Back then I was naive enough to believe that clicking “unsubscribe from this newsletter” worked. It doesn’t, or at least didn’t in this case. I clicked their “unsubscribe” button, followed the weblink, entered my e-mail address to remove it from their mailing list… and still, the newsletters came. I have tried this multiple times.

Now, one thing I would find entirely embarrassing if I were Mini of Peabody is that their newsletters contain multiple spelling errors. The one I have here in front of me contains an offer for their “Aligment Special” (it’s “alignment”), notes that their General Sales Manager’s first sale was a “Camero” (it’s Camaro), and mentions the car’s heated “seates” (seats).

After attempting to contact Mini of Peabody directly through e-mail on multiple occasions, I decided to try a different approach. In the fall of 2013 (yes, seriously) I began posting on Mini of Peabody’s Facebook page and publicly shamed them on Twitter. In October of 2013 I received a direct message from the dealership’s Twitter account (@MiniPeabody) letting me know that s/he would personally see to it that I was removed from the mailing list. I provided them my e-mail address. The very next month, in November of 2013, I got another newsletter from them. I still get them. I got one last month too, and I’m sure I’ll get one next month as well.

Based on that, here is why Why I would never buy a Mini Cooper (or any other car) from MINI of Peabody:

01. They send unsolicited e-mail (spam). Of the tens of thousands of car dealerships across the globe, this is the only one that continually e-mails me. This seems like a desperate way to sell cars to me.

02. They will not stop sending me unsolicited spam. Despite multiple attempts to get Mini of Peabody to stop e-mailing me, they continue. I can only presume this means one of two things: either they have chosen to intentionally continue to e-mail me, or technically they are incapable of no longer e-mailing me. If they have intentionally chosen to continue to e-mail me after I have requested multiple times that they stop, that would make me, as a potential customer, concerned about what other choices or decisions they would make against my wishes in the future. And if they are technically incapable of not e-mailing me, well, that’s pretty scary too. Everything from credit checks to loan applications are processed electronically at car dealerships. If Mini of Peabody can’t manage a simple mailing list, it makes me wonder if they can safely manage my social security number or bank account information!

03. Their newsletters contain multiple typos. When I pre-write one of my blog posts in Google Docs before sending it to WordPress, it gets spell checked three times: once by Google Chrome, once by Google Docs, and once by WordPress — and I’m not even running a business! When a company sends me e-mails with multiple typos in it, to me that seems like a company that doesn’t pay much attention to detail. It also makes me wonder what other parts of their business are they not paying attention to. Running spell check on an e-mail is trivial and free task. If you’re not willing to spend the few seconds it takes to spell check the newsletter that represents your company, it makes me think maybe you are not willing to spend a few extra seconds while working on my car, either. Is it laziness, sloppiness, or a simple lack of caring? I don’t know, but I do know I’m not looking for a car dealership with any of those traits!

04. They do not honor their word. In October of 2013, a representative of Mini of Peabody contacted me personally and said they would remove my e-mail from their mailing list. They didn’t. Again, I can only come up with two possible scenarios: either they cannot stop e-mailing me, or they can. If they cannot (a bizarre possibility), why would they promise me that they would do something they couldn’t do? If I did happen to buy a car from them, what else would they promise me that they could not deliver? And if they can stop e-mailing me, why won’t they? Knowing that a dealership “could” have done something for me but chooses not to would make me steer clear of them for sure.

For these reasons, I would never consider doing business with MINI of Peabody.

MINI of Peabody URL: http://www.minipeabody.com
MINI of Peabody Facebook: https://www.facebook.com/miniofpeabody
MINI of Peabody Twitter: https://twitter.com/minipeabody


Similar Posts:

Doctor P took one look at me, looked at his computer screen, and then looked back up at me.

“You are amazingly fat,” he said.

Susan says those weren’t his exact words, and that sometimes I remember what I think people meant instead of what they said. So maybe that’s not exactly what he said, but in my head, that’s what I heard.

It continued. For an eternity, it continued.

“So, what do you think about my knee?” I asked.

“I think it hurts because you’re fat,” he continued. “Have you ever tried to lose weight?”

Asking an overweight person if they have ever tried losing weight is like asking them if they’ve ever added chocolate to anything, pilfered items from their kid’s trick or treat bag, or eaten their dessert first.

“What do you have for breakfast each morning?” he continued.

“A large sugar-free vanilla iced coffee and a breakfast burrito from McDonald’s,” I replied. Sometimes I have two, but I told him one.

Doctor P smirked. “Come on,” he said. “You think one breakfast burrito and one coffee is keeping you that size? How much do you exercise each week?”

“A little,” I exaggerated.

Doctor P took another look at his computer screen and then returned his focus to my fatness.

“Do you know how much you weigh?” he asked.

I know how much I weigh. Not only do I weigh every morning, but I just did it in the hallway, outside this room. The nurse was polite enough to not act as if I was the biggest person she had weighed all morning.

“Yes, I know how much I weigh,” I responded. “But my knee…” I started.

“Your knee is not the problem. Your weight is your problem,” he said.

For the next 20 minutes — or perhaps it was eternity — I listened to diet suggestions and exercise suggestions.

“I like walking,” I offered.

Technically Dr. P didn’t roll his eyes at me, but in my version of events, he did. For the next five minutes, he explained to me how short bursts of high intensity training is actually better than 30 minutes of walking. I’m sure it is.

“How many times a week do you walk?”

I thought. There was that time back in April…

“At least three times a week,” I responded.

This time, he really did roll his eyes.

As Dr. P explained the benefits of exercise and weight loss, it hit me: this was the conversation I’ve been dreading all my life. My mind picked out key words like “diabetes” and “blood pressure” and “life span” but I wasn’t really paying attention to what he said. All I could think about was how could I have ended up here? How could I have let this happen?

The signs have been there forever. No longer being able to buy clothes at Walmart. Constantly complaining about shirts “shrinking” when in fact it was me, growing. Constantly dealing with back/hip/knee pain. Complaining about new cars being “too small.” No longer fitting in airline seats (or, at a minimum, carrying a seatbelt extended with me). The eating of the sweet snacks between the bigger snacks between the meals. The snowcones, the ice cream, the cake, the chips, the dips, the salty and the sweet, they all caught up to me right there in Dr. P’s office.

So… what were you hoping for? Another blog post promising to eat less and exercise more? As I told Mason before every basketball game, talk’s cheap — actions matter. Yoda nailed it: “Do, or do not — there is no try.” I don’t need Dr. P to tell me again. It’s time to get healthy or die trying.

For what it’s worth, I completely forgot about my knee.


Similar Posts:

This is the final entry in a series of posts chronicling our California Vacation. You find all the posts by searching my blog for “California Vacation” (or just clicking this link).

Chronologically our visit to Disneyland took place earlier in the trip than everything else we did, but we had such a fun and exciting time that it made more sense to post it at the end. This was our first time for all of us to ever visit Disneyland.

Our story begins in the Fairfield Inn, and specifically the “Pirates of the Caribbean Suite” which we got upgraded to due to my platinum stats. What additional amenities does the Pirates of the Caribbean suite hold for weary travelers, you might ask? How about a pirate themed border from the dollar store around the top of the room and this framed picture!

No matter; after a good night’s sleep overseen by Jack Sparrow, we began our block-long walk from the hotel to our destination: DISNEYLAND!

On Saturday, May 24th, the four of us arrived at Disneyland around 8:00am. The turnstiles open at 8:30am and we were some of the first people to enter the park.

I just noticed that both of my kids were wearing spring break shirts from Florida, even though we were really at Disneyland in California. We travel a lot.

Disneyland is a big place; fortunately, upon entering you receive a map. I knew exactly where I wanted to go: Star Tours. Star Tours is a motion-based ride that simulates a trip through the Star Wars universe by placing riders in a moving platform that synchronizes its movements with a 3D film.

Someone (not me) uploaded a video from inside the the ride to Youtube, if you want to get an idea of what the ride is like. My friend Guy Hutchinson also pointed me to this fantastic video that shows just how much that space shuttle is a rockin’!

Immediately outside Star Tours is the Astral Orbiter. The kids wanted to ride it and the line was short so off they went. Morgan, using a joystick, controlled the height of the Orbiter while Mason mostly just screamed like a maniac and occasionally posed.

From there it was off to ride the Buzz Lightyear ride, but not before running into a couple of old friends!

The Buzz Lightyear ride is a moving shooting gallery. Using a joystick, riders can control which direction their space pod is facing, and each rider has their own laser gun with which they can shoot targets. Each player even has their own score mounted in front of them in their space pod. Unfortunately for me, each target takes so many seconds to reset after being shot and Morgan and I ended up behind two military sharpshooters who destroyed every target as if they were carpeting the ride with napalm. Multiple times throughout the ride neither of us had anything to shoot because all the targets were offline. Although I was frustrated, Morgan couldn’t have cared less and had fun alternating between shooting at things and trying to shoot me in the head.

After the Buzz Lightyear ride, we rode Star Tours (again), Space Mountain, and watched Captain EO. We rode Star Tours a second time because the ride is randomized and there are somewhere around 50 different clips you can experience. Unfortunately for us, we had essentially the exact same ones. Bummer! Space Mountain is a roller coaster that takes place the dark with stars and laser lights surrounding you. It was fast and scary and awesome. Captain EO is a “4D” movie starring Michael Jackson that lasts about 15 minutes. The movie was removed years ago from the park but readded after Jackson passed away. It wasn’t the most exciting part of the day but I’m glad to have seen it.

The exit to Star Tours is next door to “Starcade,” an arcade with 30 or so classic arcade machines.

The kids and I could have spent all day here, but Disneyland is $100/person to get in so we left to try and make the best use of our time… but not before I squeezed in a couple of quick games of Fix-It Felix Jr.

Next up was Autopia, a ride where people drive slow cars around a guided track. The kids wanted to do it so we let them. We’ve had the same ride at Frontier City for years and nobody ever wants to ride it there so I’m not sure why they got so excited about it at Disney.

From there we took the train (through “Dinosaur Land!”) to go through the Haunted Mansion. I remember listening to a vinyl album as a kid describing the Haunted Mansion, and as a fan of special effects I have wanted to experience this for a very long time.

I didn’t love the Haunted Mansion as much as I wanted to. Now, after reading more about the ride, I wish I could ride it again and look for some of the more subtleties of the ride.

We had time for one more ride before we broke for lunch, and while it’s cheesy and old school, I insisted that we ride It’s a Small World.

It was cheesy and just like all the cliches I’ve ever heard, with the song “It’s a Small World” playing over and over on a very short loop. About 2/3 the way through the ride, I noticed that our boat was slowing down…

Up until this point we hadn’t seen another boat full of people. Suddenly, we were end to end with a bunch of them, all stuck in the same room.

We sat inside It’s a Small World for almost 30 minutes as (I can only assume) operators worked on fixing the ride. About 10 minutes into our wait we heard an announcement to cut the ride’s audio. They did, and without the ride’s soundtrack playing the room was filled with the clicks, clacks and whirs of the animations flailing around to a now missing beat. A few minutes later we heard an announcement to “begin evacuation of the ride,” but that never happened. After another five or ten minutes lapsed, the soundtrack began playing again and with some manual assistance from employees near the front of the line, the boats began to move. We were inside the ride for roughly 30 minutes and I can’t think of a better place in the park to get stuck. After a while the view got boring, but it was 80 degrees outside and 66 degrees inside our boat. Plus I’m a journalist at heart, so I love whenever something out of the ordinary takes place!

After exiting It’s a Small World, we took a long lunch/afternoon break over at Mimi’s Cafe (just off park property) where we had a good lunch and some refreshing drinks. After resting up for a couple of hours at the hotel, we headed back over to the park around 6pm.

One of the rides I was looking forward to riding was the Indiana Jones ride. Unfortunately by the time we got there no more Fast Passes were available (which we didn’t even know was possible) so we opted for the Jungle Cruise ride instead. The Jungle Cruise ride was there in 1955 the day the park opened and remains there today. It’s another classic/vintage Disney experience that I wanted to have. Everything my kids knew about this ride came from the following Weird Al song:

Both the kids and I were amazed at how many of the jokes from Weird Al’s song were used used by our own Skipper.

“And look at all the elephants out here today! This comes as a complete surprise to me cause I had no idea these guys were going to be here. If you want to take pictures go ahead — all the elephants have their trunks on.”

It was starting to get dark and one thing the kids really wanted to ride was the Matterhorn, so we headed that way next. I’ve read that the Matterhorn is not a particularly “fat friendly” ride so we let the kids ride and waited for them by the exit. Mason tried shooting some video on the ride but it was too dark and shaky to use. This one is much better. Watch out for the Yeti!

As we left the Matterhorn we passed right by the Mad Tea Party cups which the kids wanted to ride, and since there was no line it was no problem.

So, here is where our inexperience came into play. Our plan was to wait until everyone was watching the fireworks and then sneak back over and ride Indiana Jones. Unfortunately that plan didn’t work out. What we didn’t count on was 10,000 people standing in the middle of Disneyland, waiting for the fireworks and blocking our path. Circling around the center of the park was a mass of people that resembled white water rapids. The four of us dove into the human current and rode it to where we wanted to “get off,” but discovered that part of the park was now closed off due to the fireworks. Had we known we would have headed that way earlier. With that plan both figuratively and literally blocked, we decided to go with our backup plan of getting some corn dogs instead.

Before going to Disneyland I had read that the park has some of the best corn dogs in the world. The original stand we tracked down was already gone for the night so instead we found our wat to the Stage Door Cafe. There we had corn dogs and even got a free funnel cake that somebody named “Cindy” paid for and never picked up. Cindy, you missed out.

For what it’s worth, I did not think the corn dogs were better than the ones we get at the Oklahoma State Fair. Those are tough to beat.

Around 10pm while we were eating our corn dog, the fireworks show began. We should have left before they began because not only could we not see them from where we were sitting, but by the time we left thousands of other tired and cranky people were leaving at the same time. Whoever named Disneyland “the happiest place on earth” didn’t do so after being nailed in the back of the ankle a dozen times by some stroller being pushed by a kid.

We left the park four tired but very satisfied customers. All of us have agreed that we would like to visit the park again in the near future, so we can mark these things off our list and start with all the other rides and attractions we didn’t get a chance to see!

For anyone interested, here is a complete itinerary of what we saw and rode while we were there.

Date: Saturday, May 24: 2014
Hotel: Fairfield Inn, Anaheim Resort (Pirates of the Caribbean Suite)

Breakfast: McDonald’s (across from the park entrance) (7:30am)

8:00am: Arrive at Gate
8:30am: Gates Open
9:00am: Rides and Attractions Open

Rides that were closed: (Roger Rabbit, Nemo, Alice in Wonderland)

Morning Rides: Star Tours, Astro Orbiter, Buzz Lightyear, Captain EO, Star Tours, Space Mountain, Autopia (Kids), Train (Dinosaurs), Haunted Mansion, Train (Grand Canyon), It’s a Small World.

Lunch: Mimi’s Cafe (Off the property; a block’s walk.)

Evening Rides: Jungle Cruise, Mad Tea Party (Kids), Matterhorn (Kids).

Edelweiss Snacks: Chimichanga and drink ($11)
Stage Door Cafe: 4 Corn Dogs w/fries and drinks (~$50)


Similar Posts:

Somehow I think a more perfect gift would be a spell checker.


Similar Posts: