Information Post

Classic Gameboy Cellphone Cartridge – Thought page

So a comment on Reddit got me thinking: How hard would it be to make a specialty cartridge for the Classic Gameboy handheld that contains a GSM radio, an antenna, and possibly a battery? Calling would be a secondary function, but the ability to text via Classic Gameboy. That’s a neat idea.

Step 1: Research. How many different ways are there to make cartridges?

Turns out there’s quite a few. One is just a PCB with a flash chip and possibly a memory controller. The other, more feasable method will be the STM32F4 method. Why not stand on the shoulders of giants?

Step 2: How would it work?

With any cartridge, you need a ROM, and since we’re using a GSM module, we’ll need a way to communicate. Option 1: PCB with flash chip and memory controller, you’d have to talk over the link cable socket. The basic method doesn’t support games that have saves or writing back to the chip.

Option 2 is the way we could easily implement this. Dhole seems to have figured out how to make the Gameboy read & write back to an emulated cartridge. This is to our advantage.

I have literally no idea how difficult this would be, but here is the basic concept:

Part 1: Software.

The ROM for the gameboy would require a basic UI to control the modem. Commands like calling, texting, and sending data (if supported by the GSM module) would be written back to the cartridge’s writable memory area (think save file, with the command being the part that is saved). The STM32F4 would then read the memory area every X number of cycles and execute commands to the GSM module. You’d need two sets of programming. One to run the GUI and save commands, and another piggyback program on the cartridge emulator to read the saved data periodically and do whatever it wants.

Part 2: Hardware.

For the hardware, we’d need either an STM32F4 or other compatible piece of hardware. Since the software to emulate a cartridge is already written and the process well documented, why reinvent the wheel. We also need a GSM module. For just texting, a $10 SIM800L Arduino module would work well. If you want to add voice, you’ll need to upgrade to something like the Adafruit Fona module (About $40 right now) or some other GSM Voice module (I’ve found them between $20 and $90 on eBay)

If you want to go completely crazy, you could use something like an Odroid or Raspberry Pi Zero and reinvent the wheel, using the research done and the example code provided.

That’s all I have now. I have no idea how to make this a reality, but it seemed like it would most certainly be possible to accomplish.

Windows Phone App Review: Pako

Pako is, for all intents and purposes, Grand Theft Auto, in your pocket. The gameplay is reminiscent of Driver: You Are The Wheelman for Gameboy Color, and some of the first installments of the GTA series.

Gameplay is amazingly simple. You are driving a small car, in a small world. Your entire goal is to outrun the cops, and not crash. Seems simple, right? As soon as you start playing, you realize just how difficult of a game this can be. Control is broken down into two sides of the screen. Press the left side to turn left, and the right side to turn right. You cannot slow down. You drive, forever, until you crash.

Pako is not a new app on the Windows Phone Marketplace. The game, in one form or another, has been around since at least 2014. It is currently available on all three of the major mobile platforms, thanks to the Unity engine it is based on. There is even a global scoreboard to compete against everyone else who plays the game.

Fortunately, this decent amount of time available on multiple platforms means that the app has matured greatly from it’s humble beginnings in 2014. Multiple levels, multiple vehicles, and even an option to remove Ads makes this app a very strong game to play. It’s availability across platforms means you can even suggest it to friends and enjoy friendly competition.

If you’re looking for a simple game that has endless possibilities, Pako is a very good contender.

Here’s where to grab it.

UNIVERSAL INSTALLER IS HERE!

Hi Everyone

I know it’s been a while since Outlook 2016 was released, just thought I’d share my latest update.

I’ve created a new installer, new way of patching, everything is self-contained now. Just select your version from the drop-down menu and click!

Also, I’ve designed it so you can designate your install location, just in case you have a Palm install that isn’t in C:\Program Files (x86)\Palm, but instead an older version using the PalmOne name or other variations.

The new, updated setup file is available either directly from http://pizzaboy192.com/downloads/SetupUniversal.exe or by visiting http://pizzaboy192.com/download/ to grab the file.

I have tested this update a little bit, but for the most part it is the old files from the older patches, just rolled into one installer.

Please let me know if you run into issues. I haven’t made one of these installers from scratch in nearly 5 years, so I am a little rusty.

You can also visit http://h30434.www3.hp.com/t5/Palm-and-WebOS/Patch-Update-Universal-Outlook-2010-2013-2016-Hotsync-update/td-p/5474835 for the Palm Forum thread.

Enjoy!

Palm Hotsync with Outlook 2016 — update

Hi everyone,
Quick update on the Palm Hotsync Outlook 2016 patch.

First, It’s been over 5 years since the initial revision of the patch was released. The fact that I still get asked about it and getting support requests is amazing.

Second, I have a patch working for Outlook 2016. I do not own Outlook 2016 or any of the Office 2016 suite yet, but I have verified the patch working with at least one beta tester.

I am planning on releasing not only the 2016 patch, but an updated, universal installer and some other information in the next few weeks.

Unfortunately, I cannot promise an actual timeline for this. I plan to have a manual patch and instructions available by this weekend and a download link on my site. I am extremely busy with other life things, but know how much this means to a dedicated user base of Palm devices. I promise I will have it together soon. If you REALLY need to get Hotsync working with Outlook 2016, please feel free to email me or something and I will get you the beta patch I have.

Also, expect a new video soon explaining the universal installer and how it works.

That’s all for now. Enjoy!

A christmas skit

Props required: Large backdrop, Stable cutout, manger cutout, Mary & Joseph cutouts, Baby Jesus cutout. Bible cutout, Large star cutout (lighted), cutouts with words as described. Cross vertical beam, cross horizontal beam, crown of thorns cutout, spear cutout, words cutouts,
Props should be decorated in such a way that they can be reversed and turned into a scene representing the open tomb, Jesus risen, and possibly Mary & Martha at the tomb, or whatever depiction you see necessary. Each part ends up being a puzzle piece. Keep the cross up while converting everything, as it is still a part of the message, but remove the spear, the crown of thorns, and then words.

[Scene: Two microphones\pedestals. Students may either have the lines memorized or have them on scrolls to read. One microphone\pedestal on each side of the stage. The backdrop is a large black wall or curtain with which to hang things on. As the students read or recite their lines, other students take and place the items described onto the backdrop. One side of the backdrop will contain the images depicting Christ’s birth, one side Christ’s death. The backdrop should be visible aside from the readers at the sides of the stage, so all can see. (Picture a large flannelgraph, but made of cardboard or wood).]

One : The people walking in darkness have seen a great light; on those living in the land of the shadow of death a light has dawned. (Isaiah 9: 2) [Hang up lighted “STAR” over black backdrop stage left]

Two: He was despised and rejected by men, a man of sorrows, and familiar with suffering. (Isaiah 53:3) [Hang up tall beam over black backdrop, stage right.]

One: For to us a child is born, to us a son is given, and the government will be on his shoulders. (Isaiah 9:6) [Put up outline of stable on stage right]

Two: Surely he took up our infirmities and carried our sorrows, (Isaiah 53:4) [hang up crossbeam]

One: And he will be called Wonderful Counselor, Mighty God, Everlasting Father, Prince of Peace. (Isaiah 9:6) [Hang up placards over stable with these sayings]

Two : yet we considered him stricken by God, smitten by him, and afflicted. (Isaiah 53:4) [hang up crown of thorns on cross]

One: In the beginning was the Word, and the Word was with God, and the Word was God. He was with God in the beginning. The Word became flesh and made his dwelling among us. (John 1:1-2, 14) [Hang up visual representation of the Bible inside the stable]

Two : But he was pierced for our transgressions, he was crushed for our iniquities; the punishment that brought us peace was upon him, and by his wounds we are healed. (Isaiah 53:5) [hang up spear, spikes]

One : In those days Caesar Augustus issued a decree that a census should be taken of the entire Roman world. And everyone went to his own town to register. (Luke 2:1,3) [hang sign over stable, “BETHLEHEM”]

Two: We all, like sheep, have gone astray, each of us has turned to his own way; (Isaiah 53:6)[Hang sign over cross “SIN”, “DEATH” “Temptation”]

One: So Joseph also went up from the town of Nazareth in Galilee to Judea, to Bethlehem the town of David, because he belonged to the house and line of David. He went there to register with Mary, who was pledged to be married to him and was expecting a child. (Luke 2:4-5) [ add Mary & Joseph to manger scene]

Two : the LORD has laid on him the iniquity of us all. (Isaiah 53:6) [ Move SIN to the cross]

One : While they were there, the time came for the baby to be born, and she gave birth to her firstborn, a son. She wrapped him in cloths and placed him in a manger, because there was no room for them in the inn. (Luke 2:6-7) [ Add manger, baby ]

Two : he poured out his life unto death, and was numbered with the transgressors. For he bore the sin of many, and made intercession for the transgressors. (Isaiah 53:12) [Hang “IT IS FINISHED” on cross]

One : (Smiles at TWO, he has warmed up to this new style of Christmas reading.) For unto us a child is born, (Isaiah 9:6)

[During this part of the reading, students start re-arranging props. Back side of the props will be painted to represent the open tomb, lighted star will be put inside the tomb to light it from the “inside”]

Two : But he was pierced for our transgressions, (Isaiah 53:5)

One : unto us a son is given, (Isaiah 9:6)

Two : he was crushed for our iniquities; (Isaiah 53:5)

One : The people walking in darkness have seen a great light; (Isaiah 9:2)

Two : the punishment that brought us peace was upon him,

One : on those living in the land of the shadow of death a light has dawned. (Isaiah 9:2)

Two : and by his wounds we are healed. (Isaiah 53:5)

One : The word became flesh and made his dwelling among us. (John 1:14)

Two : He was crushed, he was pierced,

BOTH : and he rose again. [“Open” the tomb, turn on light again]

adapted From

Concept behind fixing x64 sync.

So, I’m going to share my concept here, and see if it does flesh out. If I don’t have time, hopefully someone else can be inspired by it and try and poke it. (That’s how I came up with the patch in the first place. Seeing someone else’s fix to the problem, looking at it, deciding there was an even better way, and actually fixing that)

Here’s the basic concepts:

Hotsync plugins have two main parts: The file, and a registry key.

The file was the easy part. It just checks for the specific version numbers, and calls it good.

However, there’s two problems when you’re running Office in x64 mode.

Problem 1: the Palm Hotsync files will be in Program Files (x86) and Office will be in regular Program Files. If it’s looking for a specific Office file in a specific location, it won’t find it, due to sandboxing of x86 programs to maintain compatibility.

Problem 2: The registry has a separate section for x64 and x86 apps.

What we know: Hotsync looks at a version number in outlook.exe itself. How? That’s the way the patches that inspired my patch worked. People would hex-edit outlook.exe to change the version number and that would fix it (Until Windows Update updated Outlook).

Knowing this, the assumption can be made that there is a possibility that it either has problems seeing the version number in x64 versions of Outlook, or it cannot see Outlook at all. I’m still looking for a program that would allow me to walk through a program’s steps, one-by-one until it’s done what it needs to do, but I have a feeling that is part of it. I’ve never actually looked at the whole contents of the Hotsync Conduit file either, so there could be a hard-coded path in there, or other problems.

What else we know: It doesn’t work with Office Click-To-Run apps. This further strengthens my belief that it could be something to do with file paths. I will have to dig into this more, but since I don’t use CTR apps, it’ll be a bit more difficult. Maybe at a future date.

How to test things:

For file paths: install Office to a custom path and see if it still works. If it does, then we know it’s looking for a registry key, if it doesn’t, then we know it’s looking for a file path. (I’m hoping it’s a registry key, because otherwise it would be a mess to deal with logistically, along with also being a million times worse from a programming standpoint). If it is a registry key, there are a few things I would need to test.

For registry keys: Is it a specific key it is looking for? If it is looking for something like Path_to_Exe, it should be simple enough to just create a new key pointing to the x64 key.

If it is something more complex, it will take quite a bit of debugging.

I’m going to use a program that detects registry changes between runs, get Office installed, and then install Hotsync and the plugin, and run a scan after each install. Compare registry edits made and start hunting. I believe there is a systernals program that would allow me to see direct registry accesses by different programs. This would be useful to see where Hotsync is reading to when it starts and see if it’s looking for specific keys.

After doing the initial run (In a VM), I’ll do another run after installing Office in a different file path. Hopefully finding the location keys. One of these keys should hopefully help me locate what Hotsync is looking for.

That’s all the ideas I have right now. If I find more, I’ll add them.

Update on self, etcs.

It’s been over a year since I last posted an update to this blog. I should probably update that.

I’ll just do a simple timeline of events that should help people out, and the next few posts will be hopefully semi-regular.

May 2014: Graduated college, Concordia University, Seward NE with a bachelors degree in Secondary ELA education, and a bachelors degree in Computer Science.

June 2014. Married the love of my life. At this point we’d been together for nearly 6 years.

Late-June 2014. Traveled the US with wife, visiting Chicago (O’Hare specifically), the SF Bay Area for 2 weeks, Houston TX (for a layover) and then driving from MSP to Detroit to see The Wizard Of Oz on stage and see family.

July 2014. Got a job in Fargo, ND, spent month packing stuff. Rescued a kitten from step-father-in-law’s farm.

August 2014: Moved in, started teaching. Absolutely wonderful students at the school. Made tons of memories that school year.

October 2014: 6 years of being together with my now-wife. I had pneumonia so we didn’t do much (And my parents were over too, that was nice)

March 2015: Contacted T-Mobile again about the 810 mess. Expected (and got) nothing at that time. Was offered choice of a 635 for free, a 925 refurb for $50, or $150 off a HTC M8 with Windows. Didn’t like those compared to the 810, so didn’t do anything.

Late-March 2015: Microsoft announces Windows Insiders for Mobile. Lumia 635 is one of the phones able to test immediately. Contact T-Mobile to see if that free 635 offer is on the table. A day of email-tag and finally a phone call, and different rep says notes mention a M8 with Windows, but says free on their end. Also got to keep the 810. M8 showed up, didn’t like it, sold it on eBay, bought an 830.

April 2015: Gave 810 to little brother. Stopped bothering T-Mobile about the 810. Great phone, but the 830 is better. 640 replaces the 810 now featurewise, so no reason to keep fighting.

Late-April 2015: School situation doesn’t work out. Job hunt initiates.

May 2015: Summer starts, school hunting starts.

Late-May 2015: Job offer received and accepted, requires relocation. That’s fine.

June 2015: 1 year wedding anniversary. Make plan to travel to location of new school and see the sites. That was cool.

July 2015: acquire new housing. Finish packing.

Late-July 2015 (last 2 days to be exact): Move. Both sets of parents help. Siblings from my side help. Was good weekend.

August 2015: New school year starts. Smaller school, great kids.

September 2015: Got a dog from local shelter. Two days before we were to adopt him, he got attacked by another dog. He spent 4 weeks at a local vet getting patched up, but since we hadn’t officially adopted him yet, we only paid $150 for adoption. He is doing great though, and as of today has no stitches and shows no signs of complications. I’ll detail his saga in a later blog post.

Now (October 2015): Life is good. Some days it can be hard, but for the most part every day has a positive experience or three.

Sorry for taking so long to update. I have quite a bit to update on my site.

Palm pulled the downloads from their site, Another version of Office is out (2016), and I am very close to fixing x64 builds of Office with it. (I’ve figured out what might be blocking it, I just need to have enough free time without other responsibilities to actually dig out my Palm collection and test stuff.)

Hopefully I can provide some useful info, and document my life, married life, our pets, and the area a little bit better. Blogging is therapeutic after all.

Follow

Get every new post delivered to your Inbox.

Join 138 other followers

%d bloggers like this: