"Firsts" are important to everyone's life. From infancy to adulthood, each new experience makes a significant impact on one's life. Some of a my significant technological "firsts" were my first laptop, video game console (Nintendo Gamecube), graphing calculator (TI-84 Plus SE), and blog (this one here). My most important computer first was learning a programming language. A few years ago, I started learning PLT Scheme. Although the language is quite limited in functionality, it taught me basic control structures and optimization techniques. While Scheme was informational, I slowly became bored of programming.
Years later, my parents bought me a TI-84 Plus SE. I was first intrigued by the "PRGM" button and soon became determined to learn TI-BASIC. I made a few programs for extra credit, but I wanted to make fun, entertaining games. My first (and probably last) finished game in TI-BASIC was a pixel-based Snake clone. I spent hours squeezing every last drop of speed it would possibly allow. While I managed to run it at a decent speed, I knew that I could never write CPU-demanding games. I realized that I had to learn this "mystical" assembly language.
I failed at my first attempt at learning Z80 ASM. I was not able to grasp the concept of the registers and the commands. Looking around, I found an eye-catching program named Axe, an application that compiles BASICesque code into Z80 machine code. It took some effort to grasp the new concepts, but I soon realized how much more powerful it is compared to BASIC.
Browsing around, I discovered Omnimaga, a thriving community dedicated to calculator programming. They hosted marvelous Axe Tutorials and BASIC documentation. I became a member and was soon impressed by their dedication to being a peaceful, constructive community. There, I found Hot_Dog's ASM tutorials. They were thorough but easy to understand. To this day, I have not found a better guide for beginners to ASM.
I know TI-BASIC, Axe, and ASM, but I still have not released a program yet. Why? I can't stay on task. (Actually I just lose the interest for some of my projects. :P) I created this blog so I can have a personal area to talk about my projects, say random stuff, and post fake news.
-RalphDSpam
Editor's note: As you can see, the quality in writing declines the further you get to the bottom of the post. I'll improve that. I also shouldn't have to put an editor's note. I'm the editor anyway. Now I'm just randomly babbling. Great.
No comments:
Post a Comment