disjaukifa Posted December 1, 2009 Share Posted December 1, 2009 Hey Guys, I'm very interested in getting into lynx programing but I don't know where to start. I have read many things but I think it would be easier if someone who has some experience could guide me a little bit. Also what is going to make this a little bit interesting is that I am using Mac OS X . . . . However I can run windows 98/2000/XP on my mac so its not that big of a deal. Any help would be highly appreciated. Thanks Disjaukfia Quote Link to comment Share on other sites More sharing options...
busterm Posted December 1, 2009 Share Posted December 1, 2009 Hey Guys, I'm very interested in getting into lynx programing but I don't know where to start. I have read many things but I think it would be easier if someone who has some experience could guide me a little bit. Also what is going to make this a little bit interesting is that I am using Mac OS X . . . . However I can run windows 98/2000/XP on my mac so its not that big of a deal. Any help would be highly appreciated. Thanks Disjaukfia I too would be interested in what the most updated methods are. Last time I looked at lynx development was in the mid 90's with BLL. Quote Link to comment Share on other sites More sharing options...
Turbo Laser Lynx Posted December 4, 2009 Share Posted December 4, 2009 One good alternative is to use Karri's U3 tools and MegaPak cartridge template to write games in C. Here's the AtariAge thread: MegaPak template available I happened to update my Lynx website today, and added instructions for a "Hello World" with the u3 tools and MegaPak template. My Lynx programming page I don't know if it works on a mac with win emulator though. Quote Link to comment Share on other sites More sharing options...
disjaukifa Posted December 4, 2009 Author Share Posted December 4, 2009 One good alternative is to use Karri's U3 tools and MegaPak cartridge template to write games in C. Here's the AtariAge thread: MegaPak template available I happened to update my Lynx website today, and added instructions for a "Hello World" with the u3 tools and MegaPak template. My Lynx programming page I don't know if it works on a mac with win emulator though. You are offically my new best friend!!!! Thanks man, I think I should be able to get it running I hope. Wish I could make a set of linux tools (then getting it to run on mac would be simple!) Thanks Disjaukifa Quote Link to comment Share on other sites More sharing options...
disjaukifa Posted December 4, 2009 Author Share Posted December 4, 2009 One good alternative is to use Karri's U3 tools and MegaPak cartridge template to write games in C. Here's the AtariAge thread: MegaPak template available I happened to update my Lynx website today, and added instructions for a "Hello World" with the u3 tools and MegaPak template. My Lynx programming page I don't know if it works on a mac with win emulator though. Hey do you think you could do a basic graphics tutorial on how to put an image on the screen and how to move it? Thanks Disjaukifa Quote Link to comment Share on other sites More sharing options...
+karri Posted December 4, 2009 Share Posted December 4, 2009 There is a new version out for the cc65 tools. I will try to upgrade my U3 tools soon. This new version has built-in interruptor support for ComLynx and the screen. Unfortunately this means that old code that set up the interrupt vector do not work anymore. But if you want to add some interrupt routines it is very much simplified now. The tools work great on Linux out-of-the-box. What still needs to be done is to put together the simplest "Hello World" application and compile environment. I hope to be able to set this up at Wookies web server soon. -- Karri Quote Link to comment Share on other sites More sharing options...
Wookie Posted December 4, 2009 Share Posted December 4, 2009 I hope to be able to set this up at Wookies web server soon. -- Karri I'm actually putting together a simple skeleton right now. I already have a simple tutorial on setting up the cc65 toolchain on linux here. I just updated my page on getting mednafen up and running for development. With those two pieces in place, I'm able to write a simple hello world skeleton and document the process of writing and running your first code. It will be here when I'm done. --Wookie Quote Link to comment Share on other sites More sharing options...
Ninjabba Posted December 5, 2009 Share Posted December 5, 2009 There's also a tread on here where I asked for help on compiling Matthias Domin's 5th tutorial on collision detection. From a reversed engineering perspective this has a lot of information to start with. Karri even made code compatible for the latest cc65 compiler http://www.atariage.com/forums/topic/152494-collision-detection/ Quote Link to comment Share on other sites More sharing options...
Turbo Laser Lynx Posted December 7, 2009 Share Posted December 7, 2009 (edited) Hey do you think you could do a basic graphics tutorial on how to put an image on the screen and how to move it? Thanks Disjaukifa Actually that is exactly what Karri's MegaPak template (mygame.c) is doing (along with showing how to do joypad controlls and other things). It shows how to scroll a picture across the screen. My two lines of "Hello world" just adds blue text on top of that Edited December 7, 2009 by Turbo Laser Lynx Quote Link to comment Share on other sites More sharing options...
semicolo Posted December 7, 2009 Share Posted December 7, 2009 I'm actually putting together a simple skeleton right now. I already have a simple tutorial on setting up the cc65 toolchain on linux here. I just updated my page on getting mednafen up and running for development. With those two pieces in place, I'm able to write a simple hello world skeleton and document the process of writing and running your first code. It will be here when I'm done. --Wookie Congratulations Wookie, these pages are cristal clear and with the schematics it's really easy to understand how the lynx works. Quote Link to comment Share on other sites More sharing options...
Wookie Posted December 7, 2009 Share Posted December 7, 2009 Congratulations Wookie, these pages are cristal clear and with the schematics it's really easy to understand how the lynx works. Thanks! classicgamedev.com is an open wiki powered by mediawiki (the same software wikipedia is built with). I encourage you to create an account and to help document what you learn. If you create an account you can also create a blog and/or project pages for your games. Like I said, it is open for the community of classic hardware game developers. If you start a blog/project page, message me here and I'll add it to the left navigation bar on the site. I'm hoping to bring all the information related to writing games for old game consoles together into a single site. Right now I'm focussing on the Atary Lynx, but I also have a bunch of NES stuff. It is my personal project to bring together and/or build easy to use software dev kits and documentation for as many old consoles as I can. I've been slowly working through the hurdles facing Lynx developers. The encryption problem has been solved, the loader stuff is being fixed now and with Karri's awesome work on the cc65 toolchain, we'll soon have an easy to set up, easy to use, dev kit for the Lynx. It will include a simple skeleton that can easily be customized to write your own games. On the hardware front, Karri has a prototype extended addressing cart and I've got my own design inspired from Karri's that uses only i2c for the EEPROM and extended address capabilities. If I remember correctly, Karri's cart is 8 MBytes and can be programmed via the Lynx. Mine is 16 MBytes but needs a separate flasher. I've also been looking into injection molding plastic cart pieces so that we could manufacture our own professional looking carts. Injection molding plastic is expensive so I'm not sure that's going anywhere, but I had to check it out. Maybe I could lease/borrow the mold used by the publishers of Zaku...Or better yet, maybe I could buy a bunch of cart parts from them and sell them through CGD. --Wookie Quote Link to comment Share on other sites More sharing options...
Wookie Posted December 8, 2009 Share Posted December 8, 2009 (edited) I'm hoping to bring all the information related to writing games for old game consoles together into a single site. If nobody helps me, my rough order of priorities for consoles dev kits is: Lynx (because I own one) NES (because I have a NES with a CopyNES board in it) Sega Game Gear (because I own one, that's why) GameBoy (because I always wanted to know how to write a GB game when I was a kid) TurboGrafx 16/Express (because I want a TurboGrafx Express) NeoGeo Pocket (I always wanted one) Atari 2600 (this seems like a black art to me with all the timing loop stuff...should be fun) GameBoy Color (probably not far from the GameBoy) GameBoy Advance (lots of dev stuff out there right now) Sega MasterSystem (don't forget the mastersystem) NeoGeo (the one that was $600 with $200 game carts when I was a kid) SNES (no lockout chip workaround without hardware modification so this is of limited interest to me) Dreamcast (it's fast becoming a classic, plus I have all the code and tools for DC dev) Atari 5200 Sega Genesis Atari 7800 C64? ZX81? Like I said before, I welcome anybody who wants to help. If you don't want to document the Lynx, then pick another system and start documenting it on CGD. I'll create a namespace for it so that all of the pages for a given system are under the same category. I don't want to lose the knowledge of how to code for all of these old systems. --Wookie Edited December 8, 2009 by Wookie Quote Link to comment Share on other sites More sharing options...
disjaukifa Posted December 8, 2009 Author Share Posted December 8, 2009 (edited) Congratulations Wookie, these pages are cristal clear and with the schematics it's really easy to understand how the lynx works. Thanks! classicgamedev.com is an open wiki powered by mediawiki (the same software wikipedia is built with). I encourage you to create an account and to help document what you learn. If you create an account you can also create a blog and/or project pages for your games. Like I said, it is open for the community of classic hardware game developers. If you start a blog/project page, message me here and I'll add it to the left navigation bar on the site. I'm hoping to bring all the information related to writing games for old game consoles together into a single site. Right now I'm focussing on the Atary Lynx, but I also have a bunch of NES stuff. It is my personal project to bring together and/or build easy to use software dev kits and documentation for as many old consoles as I can. I've been slowly working through the hurdles facing Lynx developers. The encryption problem has been solved, the loader stuff is being fixed now and with Karri's awesome work on the cc65 toolchain, we'll soon have an easy to set up, easy to use, dev kit for the Lynx. It will include a simple skeleton that can easily be customized to write your own games. On the hardware front, Karri has a prototype extended addressing cart and I've got my own design inspired from Karri's that uses only i2c for the EEPROM and extended address capabilities. If I remember correctly, Karri's cart is 8 MBytes and can be programmed via the Lynx. Mine is 16 MBytes but needs a separate flasher. I've also been looking into injection molding plastic cart pieces so that we could manufacture our own professional looking carts. Injection molding plastic is expensive so I'm not sure that's going anywhere, but I had to check it out. Maybe I could lease/borrow the mold used by the publishers of Zaku...Or better yet, maybe I could buy a bunch of cart parts from them and sell them through CGD. --Wookie When do you think the Dev Kit will be ready? I have a game I was going to release for the 2600, but I am going to program it for the Lynx. I am too restricted by the 2600 hardware (I have a version working but no where close to what I want it to be). That is another think I have been wondering, I decent at soldering, so how difficult is it to make a Lynx Cartridge? I'm getting the flash cart from Lynxman soon, so for programming I'm not that worried, its more for when I want to release my game. I have a couple of other games in mind as well that I am going to be release for the Lynx once I get a hang of the programming. Seriously, if I can pick this up, which C is not all that difficult, I have about 7 games I have planned just now, which my first one, Atomic Meltdown, I hope to release sometime next spring, summer at the latest depending on how the rest of my life goes! -Disjaukifa Edited December 8, 2009 by disjaukifa Quote Link to comment Share on other sites More sharing options...
+karri Posted December 8, 2009 Share Posted December 8, 2009 That is another think I have been wondering, I decent at soldering, so how difficult is it to make a Lynx Cartridge? I'm getting the flash cart from Lynxman soon, so for programming I'm not that worried, its more for when I want to release my game. The problem with hand soldering is time. Wookie has an interesting concept for extended addressing. My suggestion is to take that route and create cheap blank carts. Preferably similar designs to Zaku. But with 8MB of extended addressing and a large EEPROM for saves. This would open up the Lynx for new games. A large cart could also contain much more graphics and sounds. My Solitaire could also have multiplayer card games included by using ComLynx or "pass the console around". Then I could also have several card decks to choose from. And perhaps more (and better) music, graphical backgrounds, animations etc. -- Karri Quote Link to comment Share on other sites More sharing options...
semicolo Posted December 8, 2009 Share Posted December 8, 2009 That is another think I have been wondering, I decent at soldering, so how difficult is it to make a Lynx Cartridge? I'm getting the flash cart from Lynxman soon, so for programming I'm not that worried, its more for when I want to release my game. The problem with hand soldering is time. -- Karri Well if you just want to make a few cards, time isn't the issue, I'd say making the pcb is near impossible at home, you need a professional for that, especially if you want gold plated contacts (I ordered some cards without the plating, they work great but they'll probably need cleaning in the future). Quote Link to comment Share on other sites More sharing options...
disjaukifa Posted December 8, 2009 Author Share Posted December 8, 2009 That is another think I have been wondering, I decent at soldering, so how difficult is it to make a Lynx Cartridge? I'm getting the flash cart from Lynxman soon, so for programming I'm not that worried, its more for when I want to release my game. The problem with hand soldering is time. -- Karri Well if you just want to make a few cards, time isn't the issue, I'd say making the pcb is near impossible at home, you need a professional for that, especially if you want gold plated contacts (I ordered some cards without the plating, they work great but they'll probably need cleaning in the future). Where can you order the PCBs? -Disjaukifa Quote Link to comment Share on other sites More sharing options...
disjaukifa Posted December 8, 2009 Author Share Posted December 8, 2009 That is another think I have been wondering, I decent at soldering, so how difficult is it to make a Lynx Cartridge? I'm getting the flash cart from Lynxman soon, so for programming I'm not that worried, its more for when I want to release my game. The problem with hand soldering is time. Wookie has an interesting concept for extended addressing. My suggestion is to take that route and create cheap blank carts. Preferably similar designs to Zaku. But with 8MB of extended addressing and a large EEPROM for saves. This would open up the Lynx for new games. A large cart could also contain much more graphics and sounds. My Solitaire could also have multiplayer card games included by using ComLynx or "pass the console around". Then I could also have several card decks to choose from. And perhaps more (and better) music, graphical backgrounds, animations etc. -- Karri How much would an 8mb with an eeprom for saved games cost? HEck even a 4mb would be nice. My BIG game I'm going to be working on after Atomic Meltdown is going to be like Chip's Challenge/Crystal Mines II, and I'm wanting it to be 300+ levels, however a save feature would be very nice . -Disjaukifa Quote Link to comment Share on other sites More sharing options...
Ninjabba Posted December 8, 2009 Share Posted December 8, 2009 I hope to be able to set this up at Wookies web server soon. -- Karri I'm actually putting together a simple skeleton right now. I already have a simple tutorial on setting up the cc65 toolchain on linux here. I just updated my page on getting mednafen up and running for development. With those two pieces in place, I'm able to write a simple hello world skeleton and document the process of writing and running your first code. It will be here when I'm done. --Wookie Great initiative by the way! I been reading your wiki, and it surely is great to have it all centralized. Too bad I won't be of any help any time soon since I'm quite the novice. But I hope you'll be updating those pages for the lynx! Quote Link to comment Share on other sites More sharing options...
Wookie Posted December 8, 2009 Share Posted December 8, 2009 So my cart design is described in pretty good detail here: Using Hardware For Development. There are two main differences between my design and Karri's extended addressing cart. Karri's uses a flash chip that can be programmed in such a way as to allow a slightly modified Lynx to program it. My design will require a flasher built for it. Karri's design also uses the EEPROM design that I think came from Bastian42 and his BLL. My design uses i2c for both the EEPROM and the I/O extender. By going with i2c, I gain two things: the code for writing to the EEPROM and the I/O extender (upper address bits) is simpler and faster, plus there are i2c serial EEPROMs that are huge. Thus my design uses a 1 Mbit (128 KByte) EEPROM for lots of save game data. So I'm almost done with the schematic but my problem is that I'm a complete newb when it comes to hardware. I've studied it from a software perspective and I've done a fair bit of soldering and coding embedded systems but I've never designed a schematic, routed it, and had PCB's made. So here's my proposal: I still need a flash cart to work with, so how about we pool our efforts? Let me clean up my schematic and I'll post on the board in a new thread. Then, it will need to be routed and we need to find a place we can order PCB's from. I've already source all of the chips. I'll post a link to all of them in the new thread. I'd like it somebody would double check my work since I'm such a newb. I can help pay for a small run of boards and I'm good enough with a soldering iron that I could probably put them together. As for the software Lynx dev kit, I would say that we're probably a few weeks away from a fully polished Lynx dev-kit. I just recently confirmed that the new encrypted micro loader works. I've also been able to get Karri's lynx cart demo to compile and run in mednafen (you have to patch it). Right now Karri and I have been talking about the best way to use the new micro loader and working on a new lynx cart demo using it. Karri knows the cc65 linker much better than I do so I've been hoping he'd figure out how to incorporate the micro loader . I've been working on documenting everything on CGD so that there are easy to follow steps for setting up the dev-kit and writing and running your first code. Once we get there, I'll be going through the lynx runtime library that Karri's been working on for years (thanks Karri). I've never worked with it, so as I learn stuff, I'll be blogging about it and documenting it on CGD as well. I've already got wiki pages stubbed in for exporing Mikey, Suzy, the cart, input, audio, comlynx and the timers/interrupts. I am planning on writing them from the perspective of using the cc65 toolchain and Karri's lynx library. --Wookie Quote Link to comment Share on other sites More sharing options...
disjaukifa Posted December 8, 2009 Author Share Posted December 8, 2009 So my cart design is described in pretty good detail here: Using Hardware For Development. There are two main differences between my design and Karri's extended addressing cart. Karri's uses a flash chip that can be programmed in such a way as to allow a slightly modified Lynx to program it. My design will require a flasher built for it. Karri's design also uses the EEPROM design that I think came from Bastian42 and his BLL. My design uses i2c for both the EEPROM and the I/O extender. By going with i2c, I gain two things: the code for writing to the EEPROM and the I/O extender (upper address bits) is simpler and faster, plus there are i2c serial EEPROMs that are huge. Thus my design uses a 1 Mbit (128 KByte) EEPROM for lots of save game data. So I'm almost done with the schematic but my problem is that I'm a complete newb when it comes to hardware. I've studied it from a software perspective and I've done a fair bit of soldering and coding embedded systems but I've never designed a schematic, routed it, and had PCB's made. So here's my proposal: I still need a flash cart to work with, so how about we pool our efforts? Let me clean up my schematic and I'll post on the board in a new thread. Then, it will need to be routed and we need to find a place we can order PCB's from. I've already source all of the chips. I'll post a link to all of them in the new thread. I'd like it somebody would double check my work since I'm such a newb. I can help pay for a small run of boards and I'm good enough with a soldering iron that I could probably put them together. As for the software Lynx dev kit, I would say that we're probably a few weeks away from a fully polished Lynx dev-kit. I just recently confirmed that the new encrypted micro loader works. I've also been able to get Karri's lynx cart demo to compile and run in mednafen (you have to patch it). Right now Karri and I have been talking about the best way to use the new micro loader and working on a new lynx cart demo using it. Karri knows the cc65 linker much better than I do so I've been hoping he'd figure out how to incorporate the micro loader . I've been working on documenting everything on CGD so that there are easy to follow steps for setting up the dev-kit and writing and running your first code. Once we get there, I'll be going through the lynx runtime library that Karri's been working on for years (thanks Karri). I've never worked with it, so as I learn stuff, I'll be blogging about it and documenting it on CGD as well. I've already got wiki pages stubbed in for exporing Mikey, Suzy, the cart, input, audio, comlynx and the timers/interrupts. I am planning on writing them from the perspective of using the cc65 toolchain and Karri's lynx library. --Wookie I would be willing to go in on the carts with you, I'm curious on how it would be programmed, I'm more of a software guy instead of hardware but I'm learning quickly -Disjaukifa Quote Link to comment Share on other sites More sharing options...
Wookie Posted December 8, 2009 Share Posted December 8, 2009 (edited) How much would an 8mb with an eeprom for saved games cost? HEck even a 4mb would be nice. The chips I have sourced for my 16 MByte cart design cost about $10 total. With PCB manufacture, I would guess the cart could be made for under $30 each. Obviously, the more that are made, the cheaper they get per unit. Still, $30 each is not that bad. My BIG game I'm going to be working on after Atomic Meltdown is going to be like Chip's Challenge/Crystal Mines II, and I'm wanting it to be 300+ levels, however a save feature would be very nice . You could create an account on CGD and start project pages for your games and a dev blog to document their development. If you do that, I'll put them in the main link menu. I'm also looking for people interested in being admins on the site. I was thinking that I'd give admin access to the biggest contributors. So far it seems to be only me and Gravitone I'm trying to focus on getting the dev kit together and the initial tutorials. Once I get through that, I'll be launching my RPG project and dev blog. I've been playing a bunch of RPG's lately and my project is drawing inspiration from Final Fantasy Legend II Shining Soul and Earthbound Edited December 8, 2009 by Wookie Quote Link to comment Share on other sites More sharing options...
Wookie Posted December 8, 2009 Share Posted December 8, 2009 Wow, I totally hijacked this thread, sorry. Quote Link to comment Share on other sites More sharing options...
disjaukifa Posted December 8, 2009 Author Share Posted December 8, 2009 How much would an 8mb with an eeprom for saved games cost? HEck even a 4mb would be nice. The chips I have sourced for my 16 MByte cart design cost about $10 total. With PCB manufacture, I would guess the cart could be made for under $30 each. Obviously, the more that are made, the cheaper they get per unit. Still, $30 each is not that bad. My BIG game I'm going to be working on after Atomic Meltdown is going to be like Chip's Challenge/Crystal Mines II, and I'm wanting it to be 300+ levels, however a save feature would be very nice . You could create an account on CGD and start project pages for your games and a dev blog to document their development. If you do that, I'll put them in the main link menu. I'm also looking for people interested in being admins on the site. I was thinking that I'd give admin access to the biggest contributors. I'm trying to focus on getting the dev kit together and the initial tutorials. Once I get through that, I'll be launching my RPG project and dev blog. I've been playing a bunch of RPG's lately and my project is drawing inspiration from Final Fantasy Legend II Shining Soul and Earthbound I have not heard of the second game, but I have defiantly heard of the first and third!!! 30 bucks is not bad at all either! Would it be a one time program cart or could you re-program it multiple times? Also as for starting a page on your site, I will once you get that Lynx Dev-kit up, I defiantly want to get Atomic Meltdown going for the Lynx. For the tutorials, could you do something like the tutorials for Batari Basic? Here is the link: Code Snippets Samples for BB Beginners Honestly that was the biggest help, it covered the bare essentials to get going with Batari Basic. I can help with documentation and what not, I'm just one of those people that needs a simple beginning and then building from it. If you could make the could I could make a page or blog page on your site that explains what each line does and why its need, which I think would be beneficially to many people. -Disjaukifa Quote Link to comment Share on other sites More sharing options...
disjaukifa Posted December 8, 2009 Author Share Posted December 8, 2009 Wow, I totally hijacked this thread, sorry. My thread so I don't care Quote Link to comment Share on other sites More sharing options...
Wookie Posted December 8, 2009 Share Posted December 8, 2009 Would it be a one time program cart or could you re-program it multiple times? It is a flash cart that can be reprogrammed over and over again. I also need to design a flasher for the cart. I've been looking at using one of the Atmel ATMega chips with built-in USB so that the flasher is a USB device. Also as for starting a page on your site, I will once you get that Lynx Dev-kit up, I defiantly want to get Atomic Meltdown going for the Lynx. Deal. I'll write them. For the tutorials, could you do something like the tutorials for Batari Basic? Here is the link: Code Snippets Samples for BB Beginners Honestly that was the biggest help, it covered the bare essentials to get going with Batari Basic. I can help with documentation and what not, I'm just one of those people that needs a simple beginning and then building from it. If you could make the could I could make a page or blog page on your site that explains what each line does and why its need, which I think would be beneficially to many people. I'll take a look and try to make the tutorials as easy to follow and helpful as I can. --Wookie Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.