|LETTER FROM THE EDITOR|
Hello, and thank you for subscribing to the ticalc.org newsletter.
The 2005 POTY voting concluded more than three months ago, yet I still think it is quite incredible that all three POTY winners were emulators, two of them being designed for the calculator. Growing up, I thought it was amazing that people could port games, such as Super Mario, to the TI calculators, but how about having the ability to play the actual game on your 89? Or how about using your calculator to emulate the other Z80 calculators? Some people may not think it's that big of a deal, but I think it's pretty cool stuff.
Growing up, emulation always fascinated me. When my friend first showed me a SNES game being emulated on a computer, it totally blew me a way. Now that I am in the middle of my college studies, a lot of the magic that surrounded emulation has been demystified, but that still has not diminished its grandeur. Emulation is an integral part in many aspects of software development, as many C and assembly developers for the TI calculators know. Yet as much as emulation is a tool, it is also something that can be fun. I personally enjoy being able to run Windows binaries on Linux using "Wine" (an open-source program that allows you to execute Windows programs on Linux), or playing SNES games on a Xbox. How often in computer science do you see a type of program double as a tool and a source of fun?
However, there are unfortunately some limits to emulation. Not only can we not always emulate a system perfectly, some systems are so complex that we either can't emulate them based upon the information we have, or software emulation is too slow to resemble anything close to the original hardware. This is a sad limitation, but it also causes emulator developers to be more creative, to see if it is possible to test those limits and do what was thought to be unfeasible.
Now here is the point in my editorial where I usually try to have some profound thought, or make a point that will entice people to challenge me. However, unless you are very anti-emulator, I have nothing to entice you to email me with; I just think emulation cool. As always, if you do have any comments, questions, or flames, send your email to firstname.lastname@example.org.
See you next newsletter!
Jonathan KatzEDITOR'S NOTE
As some readers might be aware, this newsletter was published about a month after it was expected to be published. Due to a combination of foreseen and unforeseen events in my life, I decided to hold off the newsletter for one month. I intend to publish another edition of the newsletter just for the month of April to try and get back on track for six newsletters in a year. I sincerely apologize for the delay.
Jonathan KatzFOOD FOR THOUGHT
Last Month's Question: What types of programs do you want to see made in 2006?
I would like to see more OS X/Classic development tools, especially for the z80 calcs in 2006, and a general more cross-platform-friendliness in the community. Many members on UnitedTI are working on getting TASM running on *nix platforms, but most people develop for Windows, and the few people who develop for *nix target the 68K calcs. - Thomas Dickerson
I would like to see a Forth for Z80 based calcs (I myself have a TI-84+.) There are some Forths done for CP/M Z80 systems, so it may be as simple (or complicated) as porting one rather than doing it from scratch. - Andrew
It'd be awesome to see a TI-BASIC editor made, other than the outdated Graph-Link software. There are some people who can't run Graph-Link (or even don't know about it), and have to edit the TI-BASIC on their calculator when they code, which can be a pain when writing bigger programs. It's also easier to analyze code if you can see more of it at a time, copy/cut/paste stuff, and find things (like labels) with a search function. I bet if there was a good alternative to Graph-Link out there, some of the new TI-BASIC programs that come out later will be better. - Sam Lippert
I dare programmers to make a full and complete simulation game of some sort, be it city, pet, earth, etc. - Ben Yu
This Month's Question: How important do you think emulators are as both developmental tools and applications for TI calculators?
E-mail your thoughts to email@example.com, and your response may appear in the next newsletter!
Jonathan KatzASK TICALC.ORG
Question:How do you conduct interviews?
Answer:Most interviews are conducted over an instant messaging medium, be it AIM/ICQ or IRC. My personal preference is to use AIM, since that is usually the IM medium that I am on the most frequently, but some of it depends on the interviewee. If the interviewee does not have AIM or has some sort of moral objection to using instant messaging programs, I am always open to using IRC or sending questions over email and receiving responses. Instant messaging, though, gives a better sense of interactivity, as opposed to just answering a list of questions, since often during interviews I will come up with questions based upon where the interview is heading.Perhaps one day, interviews for the ticalc.org newsletter will be done as face-to-face dialogues with cameras and comfortable chairs, like on popular news shows, but perhaps that will only stay in my dreams.
Editor's Note: This month's humor section is brought to you by Benjamin Fortin for all the TI calculator and Star Wars fans out there!
Top 10: If George Lucas visited ticalc.org:
10. "You underestimate the power of the Fill(L1,0) command!" - Darth Vader
9. "That's no TI-89, that's a Titanium!" - Obi-Wan Kenobi
8. "Hokey Casios and ancient HPs are no match for a good TI at your side, kid." - Han Solo
7. "But I wanted to go to Tosche Station to pick up some calculators!" - Luke Skywalker
6. "Don't be so proud of this technological terror you've constructed. The ability to calculate 999! is insignificant next to the power of The Force." - Darth Vader
5. "Slimy? Mudhole? My TI this is!" - Yoda
4. "Now, young Skywalker, your RAM will be cleared." - Emperor Palpatine
3. "Sir, the possibility of successfully navigating an asteroid field is approximately one thousand, one hundred, eighty-four to one over pi!" - C-92PO
2. "Look at the size of that thing!" (Wedge Antilles, on seeing the TI-92)
1. "Help me, TI-86, you're my only hope!" - hologram of Princess Leia
Benjamin FortinINTERVIEW WITH BEN INGRAM
|Jon||So, as you might know, all three POTY awards for 2005 were for emulators, including your own: gb68k. What inspired you to create a GameBoy emulator for the 68K during the 'Year of the Emulator?'|
|Ben||I have always liked emulators. I am a big fan of classic video games of the NES, GameBoy, SNES era, so I already have lots of emulators on my computer. The idea of having a GameBoy emulator for the TI calculators had been with me for awhile, but I just didn't know enough to write one. I actually started gb68k right after finishing a M68000 core written in Verilog for a school project.|
|Jon||How difficult was the process you had to go through to create it? Anything that was particularly baffling?|
|Ben||Starting an emulator is hard, because a lot of work needs to get done before any results are visible on the screen. I was quite happy the first time the "Tetris" copyright info appeared on screen. I can't think of any one thing that I wasted a lot of time on, besides debugging the CPU core and, of course, optimizing.|
|Jon||For people who are interested in creating emulators, but haven't gone through the process before, is there any advice you could give, or some sort of layout of what you need to go through to design one?|
|Ben||I Googled around a bit before I started writing my emulator, and there are a few sites that give a decent overview of emulator construction. You need to study all the instructions of the CPU you are emulating, and then go through and write code to emulate each one. Maybe a slightly better approach is to write a separate program that generates the code to emulate the CPU. This is good, because there is lots of duplicate code throughout the CPU core, but you don't want to make function calls if you can help it. If the CPU core is generated by a separate program, the duplicate code only needs to be created and maintained once by hand. I guess the basic flow of an emulator is pretty simple; it's just all the details and the need for speed that make it complicated.|
|Jon||So, what GameBoy game did you really want to get working on your TI-89?|
|Ben||Final Fantasy Legends 1 and 2; I love those games, and I am quite happy that both run very fast on gb68k! The guys at Squaresoft were good GameBoy coders.|
|Jon||Do you have any thoughts why creating emulators was a big trend in 2005? After all, all 3 POTYs were emulators.|
|Ben||Well, TI emulators for the computer are nothing new, and a TI emulator for the 83/84 series of calculators just became realistic since the 83+ SE and 84+ calculators were released. I guess it is an area of TI development that hasn't been explored much before. There are a couple other 68k emulators that came before gb68k, such as "Tezxas."|
|Jon||Do you have any future developing plans for the TI community?|
|Ben||Yes. I have a huge game that I have been working on for years that I hope to release one day, and I plan to keep updating gb68k. I might do some other stuff in the future.|
|Jon||Anyway, enough about developing for a bit. Where do you go to school, and what are you studying?|
|Ben||I graduated from Sacramento State University in May of 2005 with a degree in Computer Engineering. Now I am working for a small company called "Pronto Games" that makes games for cell phones, GameBoy Advance, and other embedded chip platforms.|
|Jon||What got you interested in programming, or computer engineering?|
|Ben||The first time a saw a game running on the TI-85 as a high school freshman in math class. I went home, learned BASIC, and started working on a crappy RPG on my dad's TI-85. I worked on successively less crappy BASIC RPGs on the 85/86/89 through most of high school until I finally got sick of BASIC and learned C at the start of my senior year.I decided on Computer Engineering over Computer Science sort of on a whim. I knew I liked programming, but I wanted to branch out a bit and learn some hardware stuff too. My job now is pretty much all programming, but the knowledge of hardware is a big help with low level programming, like on the TI or other embedded systems.
|Jon||Do you have any hobbies outside of programming?|
|Ben||I like basketball, tennis, ping-pong, Magic the Gathering, Dungeons and Dragons, and video games.|
|Jon||So, being an avid gamer myself, what's your favorite game of all time? (If you had to pick one!)|
|Ben||Heh, not an easy question. I think Super Mario 3 is one of the best games ever made, but I didn't have a NES as a kid, so I didn't get to play it that much. So maybe I'd go with Final Fantasy 3 (which is actually FF6) as my favorite based on how much I enjoyed it as a kid. If you want other favorites, I'd go with Super Metroid, Zelda: Link to the Past, and Final Fantasy Legend 2.|
|Jon||What do you like about the ticalc.org community? Is there anything you would like to see added or improved in it?|
|Ben||I think forums would be good, although I've heard it argued that forums already exist for most TI subjects. I think general TI discussion forums in a central location would be nice. I think ticalc.org is a great site as it is.|
|Jon||And finally, do you have anything else to add?|
|Ben||Well, I put "gb68k" on my resume, and the guys at Pronto Games were very interested; it definitely helped me out when I was trying to get the job. Since I have been working for them, I have finished one emulator they had started, and then written another one from scratch. I also showed them a bit of the unnamed game I am working on, and they were impressed by that as well. So in short:: TI-projects may help you get a job!|
There are two versions of the ticalc.org Newsletter, a plain text version and an HTML version. To subscribe, send an e-mail to firstname.lastname@example.org with either "subscribe newsletter" (for plain text) or "subscribe newsletter-html" (for HTML) in the body of the message. To unsubscribe, simply do the same thing except replace "subscribe" with "unsubscribe".
You can find all issues of the ticalc.org Newsletter in our Community section under Newsletter. The exact URL is http://www.ticalc.org/community/newsletter/.
To submit material to the ticalc.org newsletter, e-mail email@example.com.
Any opinions expressed in this newsletter are the opinions of the newsletter editor and/or published authors. By no means are the opinions heretofore expressed to be considered representative of ticalc.org as a whole. Texas Instruments in no way endorses or is affiliated with ticalc.org. Any trademarks are hereby acknowledged as the property of their respective owners.