Jump to content

JimmyDansbo

Members
  • Content Count

    103
  • Joined

  • Last visited

  • Days Won

    2

Everything posted by JimmyDansbo

  1. It is not too bad to setup the environment to build a custom rom, if you have a look at https://github.com/commanderx16/x16-rom the README.md tells you how to do it. I have actually managed to create the HEX$ keyword in ROM, now I just need to figure out how to return a string. Aparently I can not return a multi-byte string the same way as CHR$ returns a single-byte string You can follow my progress here: https://github.com/JimmyDansbo/x16-rom
  2. I have been trying to help the KERNAL development by creating the HEX$ and BIN$ BASIC commands/tokens, but I do not understand enough of the KERNAL source to actually figure out how to create a new command/token. Kan anyone point me in the right direction as to what I am missing? See my note on the issue here: https://github.com/commanderx16/x16-rom/issues/49#issuecomment-714964134 Thanks in advance
  3. No worries, I had not done any 6502 programming before I started developing for the Commander X16 either.
  4. That depends on what you mean by ASCII mode. If you want to ensure that you are in textmode, either 80x60 or 40x30 you can use the screen_set_mode call. https://github.com/commanderx16/x16-docs/blob/master/Commander X16 Programmer's Reference Guide.md#function-name-screen_set_mode If you actually want ASCII character set, the closest thing you will get is the ISO mode https://github.com/commanderx16/x16-docs/blob/master/Commander X16 Programmer's Reference Guide.md#iso-mode
  5. Just stumpled over this in the VERA Programmers Reference: "Since the VRAM contains random values at startup the values read back in the register area will not correspond to the actual values in the write-only registers until they are written to once." Source: https://github.com/commanderx16/x16-docs/blob/master/VERA Programmer's Reference.md#vram-address-space-layout
  6. Heh, I had not actually thought about how close the name is to Ghost Busters
  7. I am not sure about the emulator, but I would expect RAM on physical hardware to contain random data on bootup. Unless the RAM is actually initialized at power on by some other hardware/software.
  8. JimmyDansbo

    Ghost Crusher

    Version 0.5b

    11 downloads

    In this game you need to crush ghosts between walls before the ghosts catch (touch) you. Red walls can not be moved, but green walls can be pushed around. Be careful as ghosts can walk diagonally. --- At the moment there are only 4 levels. In level 4 you will encounter a poltergeist. Poltergeists can only be killed against a static (red) wall. Let me know what you think about the difficulty level. For each level I can control: Number of walls and static walls Number of ghosts and their speed Number of poltergeists and their speed Number of portals and how long it takes before they let a dimensional ghost through.
  9. Ghost Crusher View File In this game you need to crush ghosts between walls before the ghosts catch (touch) you. Red walls can not be moved, but green walls can be pushed around. Be careful as ghosts can walk diagonally. --- At the moment there are only 4 levels. In level 4 you will encounter a poltergeist. Poltergeists can only be killed against a static (red) wall. Let me know what you think about the difficulty level. For each level I can control: Number of walls and static walls Number of ghosts and their speed Number of poltergeists and their speed Number of portals and how long it takes before they let a dimensional ghost through. Submitter JimmyDansbo Submitted 10/20/20 Category Games  
  10. Ghost Crusher View File In this game you need to crush ghosts between walls before the ghosts catch (touch) you. Red walls can not be moved, but green walls can be pushed around. Be careful as ghosts can walk diagonally. --- At the moment there are only 3 levels and they should be fairly easy to beat. Submitter JimmyDansbo Submitted 10/19/20 Category Games  
  11. Yeah, I believe it is actually Dijkstra that i have ended up with, just very simplified. Every time a ghost needs to move, it calculates the distance to the player for all open fields that it can move to in a single step and then just chooses the field with the shortest distance. If necessary, I might end up adding some sort of randomization like David has done for the Planet X3 pathfinding. Btw, just want to add that Computerphile has some nice videos on Dijkstra's- and A* algorithms https://youtu.be/GazC3A4OQTE https://www.youtube.com/watch?v=ySN5Wnu88nE
  12. That is one of my problems. Since the player is able to move walls around, I can not ensure that a ghost will always have a path to the player. At the moment I am fairly happy with how the ghosts move and with more ghosts moving at greater speeds, I am certain this game can become a challenge to play. At the moment I have the ghosts moving very slowly as I am not very good at playing the game and it gives me better time to figure out how to deal with the ghosts.
  13. After about 9 months of hibernation, I have started coding on my GhostCrusher game again. Quite a lot of time has been spent leaning about path-finding algorithms and I started implementing the A* algorithm. I ended up with a very simplified version that can probably not even be called A* as the ghosts only look one field ahead. My thinking is that even though the ghosts are "stupid", there is a reasonable chance that they will find their way to the player. So far I only have 2 levels and I have added an animation of a play through. When the player is hit by a ghost, he dies and at the moment that means that the game resets the system. You can follow my slow progress on https://github.com/JimmyDansbo/GhostCrusher/
  14. How did you imagine that the 1bpp masks should be created? I think you would need to outline your png or similar ?
  15. I do not think that BASIC has a function to return the current cursor location, but as SlithyMatt mentions, the KERNAL has an API call that can be used. Here is a BASIC program that shows how to use the PLOT API call. For further information, you can check out the SYS statement: https://www.c64-wiki.com/wiki/SYS The PLOT API call: https://cx16.dk/c64-kernal-routines/plot.html Flag locations in the FLAGS register, see page 8 of the w65c02 datasheet: https://eater.net/datasheets/w65c02s.pdf
  16. I know it has, and it has been bothering me that it is the complete opposite of normal when the emulator is started with a program and the -run option. At long last I have managed to write som code that is able to handle both scenarios in the same way. Program is started by adding the -prg and -run arguments when starting the emulator Program is started by typing RUN in BASIC If anyone else have trouble with this, I have a code example here: https://github.com/JimmyDansbo/cx16stuff/blob/master/wait_joy.asm NOTE - the JOY basic command returns 0 when no buttons are pressed, but joystick_get returns $FF when no buttons are pressed.
  17. I have created a very small program that reads the state of joystick 1 and prints it on the screen. I do NOT have any joysticks connected. If you type in above program and run it, it behaves more or less as expected. It registers the ENTER key some times and then returns 0 as no keys are pressed. When keys are pressed, the value changes accordingly. Here comes the strange part. If you save above program and start the emulator like this: x16emu -prg joytest -run The function returns 255 (all keys pressed) until a key is pressed, then it returns to normal functionality. Can someone explain why there is this difference and more importantly, how do I work around this? Thanks in advance.
  18. Well then, here is a 4GB image cx16-4gb.img.zip
  19. I have added a 64MB image that seems to work with the emulator. Just unzip and you are ready to go. cx16-sd.img.zip
  20. I have done the following: After that x16emu -sound shows: I can then run x16emu -sound "Dummy, Dummy PCM"
  21. I would also like to know if it is possible to run the emu without sound enabled? At the moment I install the alsa-dummy module to get the emulator to run in a VM without sound hardware.
  22. n00b coder here, but would very much like to try my hand at smaller tasks.
  23. Cool, I am actually in the process of creating my own 8 bit processor out of TTL chips, sound very similar to yours. 16 bit MAR, PC and SP, 4 8-bit registers and 8-bit ALU. Welcome to the community
  24. Yes, I was down there from Denmark on a business trip.
×
×
  • Create New...

Important Information

Please review our Terms of Use