Jump to content

AndyMt

Members
  • Posts

    221
  • Joined

  • Last visited

  • Days Won

    14

Everything posted by AndyMt

  1. I have some pretty nice new YM2151 audio tracks here for my next projects. They are as the composer I'm working with put it: 're-arranged to modern standards'. They sound more like what I knew from the Amiga. I assume we will get the YM plus the PSG. For my projects I'll use the YM for music and the PSG an/or PCM for sound effects. As for converting music from other formats to the PSG: that will be very hard as the capabilities are so different.
  2. Look at CJLove's libX16: https://github.com/CJLove/libX16 It is written in C, but you can see what Kernal functions it uses in vload.c and migrate it to assembler. Basically you use the flags in cbm_k_load above 2. I actually don't know where that is officially documented...
  3. Version 0.2 is online. I've Improved the collision detection and also the handling of shots. Also added some basic sound effects thanks to @DusanStrakl's example. The Web-Emulator struggles a bit with the PSG emulation. Switch off sound effects by pressing 's'.
  4. Thanks a lot for this! The interrupt handler is particularly valuable for me and also your blog post explaining how it works. I managed to adapt the code slightly and use it in my upcoming "Invaderz" game (written in C) - if that's ok?. I'm just thinking to improve it further so it would use multiple PSG channels. I have the situation that sound effects could overlap (shots + explosions). That would require the player to use a new channel every time a previous effect is still running - let's say for up to 4 channels. Right now I just hacked this by duplicating the code and the variables 4 times - with some checks which one to use in the beginning. Not the most elegant way of doing it. But my 6502 assembler skills are just not good enough (yet) for anything else (I used to code 68000 assembler, totally different). Did you consider improving the player in that direction?
  5. Yes, something in the line of this... The delay actually translates to a certain distance, so that effect is already there. But yes - I could allow a second shot as soon as the current one exploded. I'm still fiddling with all the parameters to balance the game. I might also introduce 3 difficulty levels the player can select from. From there difficulty would increase with each level, maybe in ways you have described.
  6. It's written in C using cc65. I'm quite happy with it.
  7. Yes that is correct - you can have a maximum of 2 shots on the screen and there is a waiting time of 20 frames (330ms) between shots. I didn't want allow too many shots at the same time, as the game would be over quickly. Except if the enemies could shoot as much... same effect. But it get's unplayable above 4 - I tested it. Higher levels might allow up to 4 shots (from both player and enemies). Above 5 the emulator starts to throttle, the CPU then seems to be at it's limit with collision detection. I still have potential for optimizations by using assembler for the collision detection. But already with this much on the screen I'm pretty happy. So I don't know if I will dig into assembler for this.
  8. Based on the experience with Brixx I wanted to go one step further and exploit the full power of the VERA chip. This game now has loads of sprites at the same time of which more or less all are moving. The background is 8bpp in 320x240. Right now only one level is playable, no sound etc. The plan is to have kind of a "storyline" where you defend each of our planets in the solar system. Starting from earth where the aliens suddenly appear. Then the player's task is to drive them out of our solar system. Let me know what you think .
  9. AndyMt

    Invaderz

    Version 0.7.1

    789 downloads

    This is a space invaders inspired game. Use the mouse or joystick to control the player ship. The shield segments can take 2 hits each. If enemies get too close you retreat back to the last level. You lose when all your lives are gone or you fall back to earth level again. Now with 7 playable levels Requires emulator R38! Roadmap: more diverse enemy formations enemy attack raids over the sides power ups (shields, double cannon, disruptors etc.) boss enemy joystick control done music done Different enemy sprites. done Sprite animations. done for player sprite and enemies fade in/out of palettes and backgrounds. done more levels with more backgrounds (all planets of the solar system), done sound effects basics done title screen How to use with the local emulator: Unpack ZIP file into the same directory as the emulator. Start the emulator, then enter LOAD"INVADERZ.PRG" RUN
  10. Invaderz View File This is a space invaders inspired game. Use the mouse or joystick to control the player ship. The shield segments can take 2 hits each. If enemies get too close you retreat back to the last level. You lose when all your lives are gone or you fall back to earth level again. Now with 7 playable levels Requires emulator R38! Roadmap: more diverse enemy formations enemy attack raids over the sides power ups (shields, double cannon, disruptors etc.) boss enemy joystick control done music done Different enemy sprites. done Sprite animations. done for player sprite and enemies fade in/out of palettes and backgrounds. done more levels with more backgrounds (all planets of the solar system), done sound effects basics done title screen How to use with the local emulator: Unpack ZIP file into the same directory as the emulator. Start the emulator, then enter LOAD"INVADERZ.PRG" RUN Submitter AndyMt Submitted 08/11/20 Category Games  
  11. I agree that the PSG is very capable - so much so that I fear the YM2151 might be dropped. Unfortunately for the PSG there is no music and soundfx available on the internet. For the YM2151 I can use VGM files as sources. I'm not a good music and sound composer/artist, but I know someone who provides me with that. But he won't go into learning a new tracker, unless the PSG is added to Deflemask...
  12. I have similar thoughts: YM2151 + VERA PSG. The advantage of the YM2151 is that there are trackers and also music/sounds (like VGM) ready to use (albeit not that many). The VERA PSG alone would leave me personally with no way of providing decent music. I'll probably use it for sound effects, while using the YM2151 for music.
  13. If the emulator wraps around without pushing everything down a line - then we can update just one row off-screen. That would be neat. I still have to implement my first scrolling, looking forward to that.
  14. I now learned a lot about the X16 and am almost finished with Brixx. So I'm thinking about my next project, but I have a concern here: How fast will SD card access be on "real" hardware? I'm now using the emulator and loading assets is pretty much instant. It's for example fast enough to load music in 8kB chunks into high-ram while playing. No need to load them up front. Loading into VRAM is the same. I wonder if on real hardware you could for example watch graphics to be loaded? As I understand the VERA hardware is handling the SD card access, right? What is the bandwidth we can expect for VRAM and high RAM (if different)?
  15. I agree that this will be ambitious in 640x480, especially in bitmap modes. Although - with a bit of trickery and strategically optimized tile definitions you could do this in 16x16 tile mode with 256 colors. You would only have to render the borders of the track. So instead of rendering the full lower half you could arrange the tiles just where the track is. This way memory requirements could be lowered substantially. 60-80 tiles of 16x16 in 8bpp require 15 to 20kB of VRAM for tile definitions. Let it be 100, then it's 25kB. Because the most part of the track (asphalt) and surroundings (grass etc.) would be the same tiles all the time. You would also have to update much less VRAM. Page switching would also be easier, as the pages require a lot less memory. Of course this might require slightly more CPU power (not sure actually) - but we do have that in the X16. Then you would have enough VRAM left for a nice bitmapped sky... Or use tiles, there, too.
  16. I want the aliens to move a bit more intelligent as in the original, so at least each row moving in separate formations. Sometimes running an attack over the sides to get closer. It will maybe be more like a shooter like Xenos, just without the scrolling background. Thats up for the second to next game.
  17. I'm about to test this probably this evening. My next project is a "Space Invaders" inspired game - and there are 12 enemies (16x16 4bpp) lined up in each row... Then I have the "shields" which I want to build from groups of 8x8 4bpp sprites, where there can also be up to 16 sprites in one row. Plus laser sprites from shooting etc. A total of around 90-100 sprites on screen ... Background layer 1 will be bitmapped 8bpp and on top of that layer 2 with 1bpp text tiles (UI, score, messages etc.). That will be quite a lot of stuff and I'm curious if VERA (and the emulator) can handle all this.
  18. @MattGrandis Could you maybe add SEQ, REL and DAT to the whitelist later? Those were quite common on the C64. At least for saving user data (high-scores, other databases etc). Hm... how are we going to handle this in the web emulator? I assume not at all, that would be a massive security vulnerability...
  19. New version 0.8. longer title music This now loads a full music track into banked ram. Now it's even more difficult to get this song out of your head more variation on sound effects The ping sound effects when the ball hits a brick is now slightly varied, so it doesn't sound so repetitive :-). joystick support on the title screen you can now select the controller. Joystick is emulated by cursor keys, fire button is the enter key. I initially also planned a keyboard option, but left it out because it wasn't reliable and the keyboard pause/repeat got in the way. more levels added one and also modified the 2nd one - it just was too boring. Also added some error handling for missing BIN files etc. Did some bug fixing, too (memory overflow in one place... ups).
  20. yes, that makes sense, especially for the web emulator. I'll change the program, assets and ZIP file accordingly :-).
  21. Yes the manifest generator certainly does atm. The emulator(s) don't, at least not for data files. Because everything works when I start Brixx in the (web) emulator directly. I'll ommit the manifest in the future again.
  22. Looks like it. Just tried to download a SMF files like you showed further up for the manifest: https://www.commanderx16.com/emulator/40-brixx/brixx01.smf Not found... So quick-fix would be to change the file endings to "BIN". If it's a hassle for @MattGrandis to fix this, then I'll go that route.
  23. @SebastianVogesLooking at the console output I might have spotted something: the generated manifest.json doesn't contain the music files. Looks like the included manifest was ignored. Does the manifest generator only include specific file extensions? Like BIN, PRG and BAS? The music files have "SMF"
  24. Ok, I've uploaded V0.8 again. I now included a manifest, so that should be fine now. And it works on my own installation of the web emulator. I'll check the console now... I'm loading music file segments into banked RAM. I will try to check the generated assembler code, maybe I can see something there.
  25. Unfortunately this didn't solve the problem. So: - testing the same zip file content on a web emulator on my Raspian hosted webserver works - on the official web emulator it doesn't. Strange thing is: everything I'm loading into VRAM via vload() works. Everything else with cbm_k_load() doesn't. I've reverted back to V0.7 again. Any ideas? I'm scratching my head now...
×
×
  • Create New...

Important Information

Please review our Terms of Use