I jumped the gun on announcing my ‘Grom’ project. I realized today that my side projects are getting in the way of more important things.. namely my health. In an effort to get myself back into shape I decided to put all my little endeavors on hold for a while. Rather than leave a barely begun project on CodePlex I’ve decided to remove it for now.
If anyone still reads this or is following the SweetNES project I regret to inform you that the project is dead. I’ve taken the most recent code and archived it on my personal storage should I every decide to return to it. I think my goals on the project were just a little too lofty.
The good news, however, is that I’ve started a new project that I call Grom. It is a text editor control.
At the place of my employment, the pace of development is very fast. Fortunately ASP.NET is terrific at doing rapid development. Unfortunately, it’s also very good at helping you make bad mistakes if you are not careful. ViewState is one of those great technologies that makes whipping up a website quick, but will bite you bad if you forget to keep track of it. That happened to me on a recent page where the number of controls is quite staggering. The problem is not the number of controls, but the amount of ViewState that gets created to support them. I needed to reduce the amount of content in ViewState fast!
A friend of mine has started blogging… apparently from my encouragement. I’m not sure how that’s possible, seeing as I’m likely the worst blogger on the planet.
Regardless of the reason, Raman is quite brilliant and will likely share some great coding tips. (no pressure Raman ).
It’s been a busy couple weeks and with the holidays in full swing I think I’ll be on hiatus for a while. Hope everyone has a merry Christmas and a happy New Year!
I’m so stoked that Man vs Wild is back! If you’re not watching this show you’re looser. OK, that may be too strong, but you really should check it out. I’m don’t think I’ll ever be in a position where I need to rip the intestines from a dead camel so I can sleep in the carcase for the night, but it sure is cool to watch someone else do it.
Leave it to me to make a difficult job even harder. After briefly discussing my approach for getting the SweetNES project rolling I decided to document the entire endeavor. I began to realize that there would be more than just a few “baby steps” to get this thing off the ground and that anyone interested in writing an emulator could benefit from a step-by-step guide.
The CodePlex project wiki was an obvious choice to host this information. Over the last week or so I’ve started working up some early articles. They can be found on the SweetNES project homepage. These articles will cover every aspect of the project development. Links to the reference material and related information will be provided.
They are by no means easy to produce. By my estimation I’ve spent at least as much time writing the articles as I have coding and it’s slowed my development to a crawl. It’s a herculean effort to say the least but I think it will be very rewarding. I know of no other project like it. When all is said and done, anybody should be able to learn how to write an emulator from the ground up.
You’re editing a large text field in the browser window.
The cursor mysteriously jumps out of the text field without you knowing.
You hit the Backspace button to make a correction and BAM!… the browser navigates back a page and all the text you entered is lost.
It happens to me all the time. Especially lately since I’ve been making large textual changes to the SweetNES project Wiki. I finally decided that enough was enough and looked for a way to disable the backspace “feature”. I found several Firefox extensions that were made just for this purpose but the idea of having to install another extension just to handle this annoyance seemed a little much. Then I found it can be disabled via the Firefox config page. Here’s how:
Open a new Firefox window.
In the address field type in “about:config”.
Once the page has loaded you can filter down to just the option we’re looking for by typing “browser.backspace” in the Filter field.
Right-click on the the browser.backspace_action item and select Modify from the menu.
In the Enter integer value popup window enter the value “2″ in the field and click OK.
Restart Firefox.
What this does is “unmap” the backspace button effectively disabling it. According to the documentation at MozillaZine (link below): a value of 0 makes the backspace button navigate backwards in history, a value of 1 will scroll up a page in the current document when the backspace button is hit (perhaps more annoying than the first), and “Any other integer value will simply unmap the backspace key.”
I don’t know why this is so funny to me. I’ve noticed for years that Larry King doesn’t seem to know much about his guests… especially those in pop culture. Someone finally called him on it and it happened to be one of my favorite comedians. Take a look:
As I begin work on the SweetNES project, I’m come to see that it’s difficult to get any gratification back until a good portion of the emulator has been written. In other words, I won’t be playing any spectacular games for quite some time. The reason is because so many of the subsystems are depended on one another. A logical first approach is to start work on the 6502 instructions and CPU core. However, no graphics will get to the screen without work in the PPU. In addition, a game won’t be playable without input and sound. Of course all these are interconnected and have strict timing tolerances. It would seem that the whole emulator would need to be written before anything could be tested. So for the past week I’ve been asking myself the best way to begin work so that I can get some feedback as soon as possible, otherwise, I could go way down the wrong path and find it difficult to re-engineer later.