Tanrunomad #1 Posted November 25, 2013 (edited) Greetings gamers, Last month I mentioned I'd be taking the dive into 6502 assembly (I've previously only programmed in BASIC). I have my first game just about finished, but at this stage I'd love to get some help beta testing. What do I need tested? Everything! But the big things would be collision detection and making sure no pixel residue remains after bullets or characters make contact with one another. It doesn't have to be perfect (it won't be, but at least fair). But really, the more scenarios you can test for the better. Also, if you own a real Apple II, please test it there too. It'll run on any Apple II with 64k RAM. About the game: It's an arcade game probably best described as a cross between Robotron and the hunting section from Oregon Trail. You're a sheep farmer and your flock has escaped from their fencing. Armed with a shotgun, you must protect them from the natural (and unnatural) forest inhabitants as they make their way home. Things to know: You lose a life by touching any creature except for the sheep or by losing three sheep per stage. An extra man is awarded every 1,000 points. After each boss stage (alien stage), you get a 500 point bonus. Both joystick and keyboard input are supported, but joystick is recommended. The difficulty increases until level 20, where it remains for as long as you can survive (but a cool ending scene awaits if you make it that far!) Thanks up front for testing. I'll be updating the link below to always have the latest version of the game as I finish it up. Also remember, this is my first assembly game so slight performance slowdowns and some flicker are to be expected. http://tanrunomad.com/wp-content/uploads/disks/LAMBCHOPS.do Edited November 26, 2013 by Tanrunomad 5 Quote Share this post Link to post Share on other sites
potatohead #2 Posted November 25, 2013 Awesome! I'll get setup to test it this week. I've a //e with the CFFA and real disk drive. Thank you very much for posting it here. Feel free to expand on it and tell us some of your 6502 adventures. Many would enjoy reading that. Quote Share this post Link to post Share on other sites
Tanrunomad #3 Posted November 26, 2013 Awesome! I'll get setup to test it this week. I've a //e with the CFFA and real disk drive. Thank you very much for posting it here. Feel free to expand on it and tell us some of your 6502 adventures. Many would enjoy reading that. Oh yes, many adventures indeed! On a whole it was very fun. You have so much more control at this level and the file size is wayyy smaller than with BASIC programming. I read the book "Assembly Lines" by Roger Wagner just prior to writing this program (incidentally Roger lives about 10 minutes away from me, at least at the time of writing this book!). It was a very nice introduction and drew many parallels to BASIC to help readers like me understand the concepts. I also was reading certain sections from "Apple Graphics and Arcade Design" which helped me deal with some of the more technical information needed as I got deeper into my program. On a whole, 6502 is not really difficult, at least not for developing this sort of game, it's actually very similar to BASIC in many ways. My biggest challenge was dealing with the memory layout of the Apple II (and with Merlin) as well as the odd way the color graphics behave. I ended up having to split my source in 4 parts so Merlin's HIMEM didn't cause issue. Another fun challenge just last night was having to disassemble and modify the music player routine I used from Electric Duet so that you can use keyboard controls without it ending music and sounds effects prematurely. I used Apple's mini-assembler to do this. A few friends from the Apple II community also helped me with some newbie questions I had. Quote Share this post Link to post Share on other sites
Keatah #4 Posted November 26, 2013 oh awesome Quote Share this post Link to post Share on other sites
Nognir #5 Posted November 26, 2013 Looks nice! I didn't know that there is also a Homebrew Scene for the Apple II. Quote Share this post Link to post Share on other sites
Bill Loguidice #6 Posted November 26, 2013 "Assembly Lines" by Roger Wagner is available for reasonable prices used, but sadly, "Apple Graphics and Arcade Design," is not. Used copies go for well over $100! Quote Share this post Link to post Share on other sites
potatohead #7 Posted November 26, 2013 I have read that one in the past from the university library. Great book. It is out there today for those who go looking. Quote Share this post Link to post Share on other sites
Bill Loguidice #8 Posted November 26, 2013 Ah, indeed, in this thread: http://atariage.com/forums/topic/209420-apple-graphics-arcade-game-design-by-jeffrey-stanton/ Quote Share this post Link to post Share on other sites
Tanrunomad #9 Posted November 26, 2013 (edited) I own the hard copy of Assembly Lines ( I bought it for about $15), but only had a PDF version of Apple Graphics and Arcade Design. The latter book definitely got me out of a couple jams when I hit a wall and couldn't find the answers elsewhere. Definitely recommend it to any Apple II programmer. Where I deviated from that book was with my character design. It mostly talked about bitmap graphics, but I stayed in my comfort zone using Apple Shape Table (vector) graphics which I've used many times before in BASIC. With them, I could more easily create my "sprites" and plot them against the screen and rotate them as needed. Another big reason I used them was because of their built-in collision detection (location $EA), but unfortunately it isn't 100% fail proof so I had to use other means as well. For a simple game like this where no more than 5 characters are moving on the screen at once, shape table graphics work okay, but if I need to design a more complex and busy game, I'll need to use bitmap graphics for their speed. Edited November 26, 2013 by Tanrunomad Quote Share this post Link to post Share on other sites
Keatah #10 Posted November 27, 2013 (edited) Looks nice! I didn't know that there is also a Homebrew Scene for the Apple II. We don't have a homebrew scene. Games like this are pretty rare and show up maybe once every 3 or 4 years? If at all.. Edited November 27, 2013 by Keatah Quote Share this post Link to post Share on other sites
carlsson #11 Posted November 27, 2013 Perhaps Tanrunomad is the only person in the world to develop new games for the Apple ][ line of computers? I checked poüet for demos/intros and found a total of 5 releases in the past five years, but I realize far from all qualifying entries are uploaded to that site. Quote Share this post Link to post Share on other sites
Bill Loguidice #12 Posted November 27, 2013 Perhaps Tanrunomad is the only person in the world to develop new games for the Apple ][ line of computers? I checked poüet for demos/intros and found a total of 5 releases in the past five years, but I realize far from all qualifying entries are uploaded to that site. When writing "Vintage Game Consoles," which comes out in March, it was a struggle finding homebrew games being actively developed for the Apple II. This is in stark contrast to almost any other platform covered in the book. With that said, homebrew hardware development efforts are quite healthy, so there's at least that. Quote Share this post Link to post Share on other sites
carlsson #13 Posted November 27, 2013 So you're saying if we manage to drum up one big Apple ][ homebrew community in the next two months, your book will be partially obsoleted before it is published and you have to rush to get an errata? 2 Quote Share this post Link to post Share on other sites
Tanrunomad #14 Posted November 27, 2013 Just replaced the disk file. I put in lots of small refinements. Happy gaming! Quote Share this post Link to post Share on other sites
Keatah #15 Posted November 27, 2013 The Apple 2 series hardware "community" can appear to be divided into several sections. 1- The typical noob. They go around trying to acquire hardware to get going and actually do a nostalgia trip with Oregon Trail. This segment has little to no hardware experience, they don't know how to use a DMM, they don't know DOS or how a Disk II interface card works. They have zero soldering skills and no electronics knowledge. They might've played with the computer in primary school. They might have wanted one as a kid, but ended up with cheap-o C64 or 400/800 instead. They almost always purchase hardware on ebay, Salvation Army, Goodwill, or a friend. They don't read manuals very well. But they're mostly curious about the platform. Their most common questions revolve around broken hardware or using the Disk II. They need fix-it-up knowledge, and a place to get parts from. They don't often know what expansion cards are needed. Many were born way after the 2 series was discontinued. 2- There's the bux deluxe collector. They chase after period and date-correct parts, criticize each other 'til no end. They stalk ebay and aren't afraid to get in a bidding war. Yet at the same time they bitch about how high prices are. They routinely pay thousands of dollars for a console. Message board threads can be 8 pages long and revolve around the labeling of a single part or true originality of a machine. They're not as tech oriented as the next group, but know when something is out of order. 3- The sensible old-guard which had their Apple 2 series hardware since it first came out. This gang knows the in's & out's of how to get the hardware rolling. They have a moderate collection of original single-owner paraphernalia which is played with from time to time. This gang is typically helpful in getting noobs going. If these guys don't know an answer they know where to find it. Members of this segment probably had some small influence in early users groups or maybe ran a BBS or did something productive with their hardware back in the day. 4- The modern day developer. They produce worthwhile hardware addons, they can be of any age and any style of collector/user. To much less extent they do software. But typically they focus on their projects to perfection. I see little if any difference between the quality of new Apple 2 products and stuff for other 8-bit machines. 1 Quote Share this post Link to post Share on other sites
Osgeld #16 Posted November 29, 2013 We don't have a homebrew scene. Games like this are pretty rare and show up maybe once every 3 or 4 years? If at all. seems more like once a year for the last 4 or 5 years if not a little more Quote Share this post Link to post Share on other sites
potatohead #17 Posted November 29, 2013 Yeah, that's about right. Can't wait until I get back to my Apple to try this one. Very curious to see how the shape tables play out. I'm not sure I've seen much assembly code driving shape tables. Quote Share this post Link to post Share on other sites
Tanrunomad #18 Posted November 29, 2013 Update: Just fixed lots of small bug fixes (and a couple big ones!), so re-download the latest version if you already have a copy. So I didn't actually test my game on real hardware until today (I know, I know, shame on me) and I discovered 2 big problems: 1) The random number generator I'm using does not work on my IIGS or IIc Plus (it works on the IIe and others though). So I'll need to rewrite that so it's compatible with all Apple II's, shouldn't take long. 2) I noticed my joystick was not reading my directions correctly when playing on real hardware. At first I thought it was my joystick, even though I just calibrated it, so I tested with 2 others and still had the same problem. The problem is a phenomenon known as "Paddle Crosstalk" in which you need to provide a substantial about of delay between the reading of the vertical paddle and horizontal paddle otherwise the timers don't have time to reset to zero and the readings get all screwed up. It's an issue that doesn't exist under emulation (I use the term emulation loosely since it's clearly not emulating 100% . Anyways, I repositioned some code to lie in between the two readings and that resolved it, so all is well in Lamb Chops land! Quote Share this post Link to post Share on other sites
Tanrunomad #19 Posted November 29, 2013 Yeah, that's about right. Can't wait until I get back to my Apple to try this one. Very curious to see how the shape tables play out. I'm not sure I've seen much assembly code driving shape tables. I've read that shape tables are 6 times faster when run through assembly over BASIC. I think the game speed is fine for what it is, but anxious to hear how others feel. Please let me know your feedback once you have a chance to play on a real Apple IIe! Quote Share this post Link to post Share on other sites
Osgeld #20 Posted November 29, 2013 at some point this weekend I will plop it on my IIc and check it out! Quote Share this post Link to post Share on other sites
Keatah #21 Posted November 29, 2013 This is all shit man I wish I had the time to test in-depth. But being on the road I'm limited to posting messages. Quote Share this post Link to post Share on other sites
The Usotsuki #22 Posted December 9, 2013 The Apple 2 series hardware "community" can appear to be divided into several sections. 1- The typical noob. They go around trying to acquire hardware to get going and actually do a nostalgia trip with Oregon Trail. This segment has little to no hardware experience, they don't know how to use a DMM, they don't know DOS or how a Disk II interface card works. They have zero soldering skills and no electronics knowledge. They might've played with the computer in primary school. They might have wanted one as a kid, but ended up with cheap-o C64 or 400/800 instead. They almost always purchase hardware on ebay, Salvation Army, Goodwill, or a friend. They don't read manuals very well. But they're mostly curious about the platform. Their most common questions revolve around broken hardware or using the Disk II. They need fix-it-up knowledge, and a place to get parts from. They don't often know what expansion cards are needed. Many were born way after the 2 series was discontinued. 2- There's the bux deluxe collector. They chase after period and date-correct parts, criticize each other 'til no end. They stalk ebay and aren't afraid to get in a bidding war. Yet at the same time they bitch about how high prices are. They routinely pay thousands of dollars for a console. Message board threads can be 8 pages long and revolve around the labeling of a single part or true originality of a machine. They're not as tech oriented as the next group, but know when something is out of order. 3- The sensible old-guard which had their Apple 2 series hardware since it first came out. This gang knows the in's & out's of how to get the hardware rolling. They have a moderate collection of original single-owner paraphernalia which is played with from time to time. This gang is typically helpful in getting noobs going. If these guys don't know an answer they know where to find it. Members of this segment probably had some small influence in early users groups or maybe ran a BBS or did something productive with their hardware back in the day. 4- The modern day developer. They produce worthwhile hardware addons, they can be of any age and any style of collector/user. To much less extent they do software. But typically they focus on their projects to perfection. I see little if any difference between the quality of new Apple 2 products and stuff for other 8-bit machines. I don't exactly fit any of those categories. Quote Share this post Link to post Share on other sites
Keatah #23 Posted December 9, 2013 what category, if any, would you fit? Quote Share this post Link to post Share on other sites