John Reed's Projects Portfolio

Over the years I have worked on many small projects. I am attempting here
to recall as many as I can. Some were done so long ago the source code has
been long since lost. I will try to add code and exes when I have time so
check back for updates. For a detailed history of my work experience, which
isn't much, you can find my resume here.
Black Jack
year 1990 language Basic
This is the first program I can remember writing. I was in 5th grade. My family had a Tandy TRS-80 Color Computer 3 and I learned Basic from the book that came with it. There was no real AI just random number generation and comparisons of the values I think. It's hard to remember back that far. I only remember this one well because I entered it in the school science fair. I couldn't bring my computer to school so I wrote out all the code by hand and had it taped on the wall. The judges were so impressed I got a first place ribbon, but not the grand prize trophy.
Battle Zone
year 1992? language Basic
My first attempt at a graphical RPG game. This was not long after Black Jack. I'm not sure, but I think it was inspired by Kings Quest which I had played on someone else's computer. There were no moving graphics though, just a static picture. Sub routines would draw the terrain and monsters using the circles, lines, and other drawing routines in Basic. That was in the upper left. Along the right side were your statistics and on the bottom was the text interface for entering commands. You could move around the map and fight monsters, but that was about it.
Delerium
year 1994 language LPC
This was during my freshman or sophomore year of high school. It was a MUD written in LPC a C like scripting language for the Mac. The code was already written, but I ended up doing a lot of modifications. I ran the server on a Power Mac 6100, one of the first Power PC Macs.
cal
year 2000 language x86 assembly
sample code
cal.asm
I took a class in assembly and wrote a simple calculator application. It ran in the dos console. You typed in a simple expression and it evaluated it. Even though this was a simple program it still took some time to write. I came away from that class with a good understanding of both x86 and z80 assembly.
MUD Client
year 2000 language VB
sample code
main.vb6
screenshots
interface
My friend had been developing a MUD and wanted a more advanced client. We basically took a standard telnet client and added color syntax highlighting and the ability to display information like inventories in separate windows. The program was ok, but had buffer problems. I couldn't get a screen shot with the color and everything because the server is no longer running.
Network Monitor
year 2001 language VB6
I began this program in 2001 as a packet sniffer. It was originally intended to capture network packets and reassemble them into readable data. I later found a program that did almost exactly what I wanted so I just turned it into a bandwidth monitor instead of spending all the time and effort finishing it. It displayed all the computers on the network and showed their current upload and download bandwidth usages. Even though I used Visual Basic I still learned a lot about network packet structure and networking in general. I actually used the program when I lived with my room mates because we had six computers and when ever someone uploaded something it killed our DSL bandwidth. So I often used it to see which computer was uploading a large amount when we had our gaming sessions.
PMCS Reports
year 2002 language VB
sample code
pmcs.vb
screenshots
main
I was deployed to the middle east in 2002 for a year so didn't have much time to program. However, our unit was testing out a new maintenance system that used a MS Access Database and VB front end. It only generated one massive report which could be a pain to go through, so I developed a dynamic report generator in VB. It allowed us to filter tasks by what type of service was due when and sort or filter by most of the fields.
RFControl
year 2003 language VB6
sample code
RFControl.VB6
RFGeneral.VB6
In 2003 I bought a Turtle Beach RF remote control on clearance at CompUSA. However, it didn't come with drivers just a proprietary program that interfaced with it. I wanted to use it with all my windows programs so made my own driver program. I learned how to read input from the serial port and found the codes for each button. I then made a program that let you make custom mappings for different programs. Basically it mapped each button press to a keyboard stroke or series of strokes that you defined. You could use the number buttons to open ten mapped programs and an AB button to switch to using actual numbers. The program comes in real handy all the time. I like to put on my wireless headphones and listen to my mp3 collection. With my remote I can skip songs I don't like no matter what room I am in.
Delerium II
year 2004 language C++
sample code
copyright
screenshots
Alpha Inventory
My friend wanted to make a MMORPG like EverQuest, for fun, so purchased a license to the Torque engine, used in Tribes II and other games. I worked on a menu system, character creation system and integrating Quake models into the engine using someone else's code which I fixed a couple bugs in. Overall, I got a basic understanding of 3D applications and OpenGL, but we decided it would be too much work for three of us to do all the modifications so we have switched to a new engine.
BarQuest
year 2005 language ASP
sample code
bars.asp
A site I came up with because I never knew what was going on in town. So I decided to make a site and see if the information would come to me. I worked the site into a class project and had a group of people working on it, but a lot of the code was done before the class started. For this site I didn't do a lot of original programming. Most of the code is borrowed from free scripts though it took a long time to modify and adapt it all to my needs.Check it out here.
ijvm mod
year 2005 language jvm microcode
sample code
writeup
I had a lot of fun in our computer architecture class. We studied a simplified version of the java virtual machine that only handled integers. We studied the java assembly language for the machine and even the micro code for each assembly instruction. Then we wrote our own assembly instruction in micro code to shift bits right and used it in a java assembly program that printed out the ascii value of a character entered.
MySpider
year 2005 language Java
sample code
spider.java
urlmonitor.java
parser.java
We were assigned to create a multi-threading spider that performed a general task on the web. My program was just text based, but performed pretty well. It was designed as a spider engine that had a general api, so that anyone could write a parsing class that could set the priority of links to follow and gather whatever information it wanted. I started building a plugin that parsed and analyzed myspace, but became too busy with school work to complete that side project.
SocialNet
year 2006 language Java
I wanted to add a profile system to BarQuest so worked it into another class project. All of the code is original and written by me. I had to use JSP for the class, but would have preferred to use ASP.NET. The application connects to a SQL Server database but will support MySQL too. I am currently working on the mail system for another class and still consider the code alpha though you can check it out here:

User ID: Test
Password: 12345
Login
Make sure to press the actual Login Button.