Jump to content


New Members
  • Content Count

  • Joined

  • Last visited

Community Reputation

43 Excellent

About drludos

  • Rank
    Space Invader

Recent Profile Visitors

1,142 profile views
  1. Thanks you a lot for your help! I've just sent you a PM
  2. Woaw, thanks a lot for the numbers and your test, it's very good to know!
  3. Oh by-the-way, I have another "performance question" related to Suzy: Is it faster to render a small sprite stretched to a larger size by Suzy using the SCB or to render a big sprite directly? For example, if I want to draw a blue fullscreen background, would it be faster for Suzy to draw a 1px*1px blue sprite stretched to 160*102 or to draw directly a 160*102 blue rectangle sprite?
  4. As someone who is trying to make a 60fps game on Handy, I'm glad to read that! I'm quite impressed that the Lynx can draw a 102 sprite chain at 60fps, someone will maybe make a manic shooter game on it someday! Did you make your test with Mednafen too, as it's apparently *faster* than real hardware?
  5. Well, it isn't fixed in the RetroArch 1.7.7 release (the one I used), but I guess it'll be fixed in the next one then. Thanks also A LOT for the EEPROM code in the cart template, it works wonderful and saved me a lot of trouble!
  6. Thanks a lot for this trick! I too was able to confirm that EEPROM save/write now works on my game using RetroArch and your "file hotswap", so thanks a lot for discovering it and taking the time to share it publicly!
  7. Thanks for those optimization tips! I use 2 structs array, I'll see if I can get rid of them (oddly enough, I don't use an array to hold the sprite chain: I always draw the same 20 sprites, but modify their position / graphics data according to the current game state). Regarding text rendering, do you mean that it's faster to display letters/words through individual sprites instead of using the tgi_outtext fonctions?
  8. I must confess I like the "smooth" feeling created with a 60fps game, although I know many Atari Lynx games don't run at 60fps and are still as much fun. But seeing that my game is currently so close to running at 60 fps all the time, I wanted to see if you could do it. I'm also inspired by Nop90's Xump who managed to make it 60 fps :). But, if you were to code a 30fps games on a Lynx, how would you do it? AFAIK, you can't set a 30 fps refresh rate, so do you use a 60hz refresh rate but you swap your graphics buffer every 2 VBlanks only?
  9. As I don't have any way to test games on my real Lynx for now, I'm wondering: which emulator is the most accurate compared to real hardware? More specifically, is Handy or Mednafen the most accurate regarding the "limits" of Suzy rendering? I'm programming in C with CC65 (karri edition). For my little project, the rendering is made of a single 20 SCB chain + 5-6 call to the text drawing routine. I'd like to target 60 fps. On Handy, with the 20 sprites chain and a couple of text displayw, everything goes smoothly. But when I add more text calls (5-6 in total), the framerate drops dramatically to 30fps (tested on Windows and PSP versions of Handy) from time to time. However, the same test with Mednafen (windows) runs at 60 fps without any framerate drops, even if I add more than 5-6 text drawing call. In such a case, which emulators is faithful to the original hardware limitation : Handy or Mednafen?
  10. I don't want to derail this thread (outstanding work VladR, I'm eager to see the textured version now!), but if you want to start programming for an actual retro machine, I think the "easier" choices are: A) You lean on your previous knowledge of BASIC (that is also quite simple to learn compared to C or assembly) and create games for: - The Megadrive / Genesis (loads of power, quite simple architecture, and sprites/tiles based graphics shared with many other 8/16 bits consoles). As you know Basic, you can make some very cool games with BEX (http://devster.monkeeh.com/sega/basiegaxorz/) or Second Basic (http://www.second-dimension.com/second-basic) - both are Basic Languages running on Megadrive, and some "commercial" homebrew have been made with it. - The Atari 2600, with the wonderful batariBasic (https://www.randomterrain.com/atari-2600-memories.html#batari_basic) - the 2600 is obviously more limited in term of CPU power and has more constraints display wise, but it's a very interesting console to create games for . Many "commercial" homebrew have been created with it, it's very powerful and easy to learn / use. B) You want to spend some time to learn the C programming language, so you can set your sights on: - The Megadrive / Genesis has the most easy to use and powerful retroSDK around: SGDK (https://github.com/Stephane-D/SGDK) - commercial homebrew like Tanzer or Xeno Crisis are made with it. Compared to other C-based SDK for other consoles (GB, SNES, Lynx, etc.), it's easier to use as it comes with a "sprite engine" that do all the low-level work for you (setting VRAM usage, using DMA transfer to send new graphics data, etc.), so you can focus on creating "spriteA" and tell it to "play anim Y" for example. - The GameBoy with GBDK is also a good candidate as the console is quite simple to understand, especially if you use the ZGB engine that allow to create scrolling games very easily (https://github.com/Zal0/ZGB) - And of course, to go back on track with the thread, although I'm only starting to discover it, I find that the Lynx is very cool to program for - the tutorial available here will hold your hand through most of the learning process : https://atarilynxdeveloper.wordpress.com/ Please note that many other consoles have C (NES, SNES, NeoGeo, PC-Engine, SMS/GG, etc.) or BASIC (Atari 7800, Intellivision, Jaguar, etc.) based SDKs too.
  11. Sorry for the noob question, but, so is there a link somewhere to a windows binaires version of Handy with working EEPROM support? The Handy v0.971 I've tried doesn't seem to support it (i'm trying the EEPROM features with CC65 karri edition + Karri/Nop90 template) Also, where can I get the "developer version" mentioned in the first post? (windows binary too if possible :)) Thanks!
  12. Thanks, I'll try my best to make something fun to play on the Lynx! As I'm learning how the hardware works, I must admit that I'm really impressed how powerful Suzy is, especially when sprites are chained! So thanks again for running this competition, it was the perfect motivation to discover how the Lynx works from the inside!
  13. It works perfectly, thanks a lot Nop90! By-the-way, thanks a lot for your update template too, it's very very helpful to start making your first lynx game! I'm looking forward to your entry in the competition!
  14. Hi! I'm slowly starting to discover the wonderful world of LynxDev thanks to Karri's version of CC65 and LX.net tutorial. I managed to display several sprites on screen, but I was wondering: How can we "chain" sprites to speed up their drawing? I declare my SCB in separate variables, like the following example : extern unsigned char gfx_bg[]; SCB_REHV_PAL spr_bg = { BPP_4 | TYPE_BACKGROUND, REHV, NO_COLLIDE, 0, gfx_bg, 0, 0, 0x0100, 0x100, { 0x01, 0x23, 0x45, 0x67, 0x89, 0xAB, 0xCD, 0xEF } }; But, when I try to add the variable name of another SCB (say "spr_player") in the "next" member of the struct, I get a compilation error. I've tried to insert a reference to it (&spr_player), but it doesn't work either. I looked at the various examples on this forum, but the ones I found use some ASM code to make the SCB chain. So, how can we chain SCB with CC65? Thanks for your help!
  15. Thanks a lot Karri for your help, and for taking the time to retest the whole installation process for me. I finally managed to get the compilation working (with mingW) by using a more recent mingw64 instead of the mingW32 builds I had tried earlier. I did get a few warning (variables declared but not used), but no errors! Once the bins were built, building the rest of the lib worked smoothly. I also tried to compile Nop90&yours template, and it runs perfectly! So thanks again to all of you for your help, I have finally set up the LynxDev toolchain on my computer! Now I'll dive into the wonderful LX.Net tutorial while thinking about a game idea, and hopefully I'll be able to create something by the end of the summer!
  • Create New...