Jump to content


  • Content Count

  • Joined

  • Last visited

  • Days Won


Getafix last won the day on November 19 2020

Getafix had the most liked content!

Community Reputation

40 Excellent

Recent Profile Visitors

The recent visitors block is disabled and is not being shown to other users.

    Great work! This was recently done for the Apple IIgs which was the first I saw of it and have since watched the other versions. Yours is a truly excellent implementation.
  1. It definitely works as I have used it. I am sorry I can't be more helpful right now and assuming you have r0, r1 and r2 set up, I don't see anything clearly wrong (I don't know if r2 is safe to use as your own index when calling GRAPH_put_char but I assume you checked that already). All I can say is it does work.
  2. Something I didn't know but just found out is that the mouse support works on an iPhone as a touch pointer, so I was able to play this game on my phone in Try It Now. The sound even comes through but it is almost not recognizable.
  3. That was a particularly odd choice on his part. He could rather have cancelled all other versions and stuck to this, for the good of the project. Perhaps he doesn't really feel this is his computer anymore, or he doesn't realize that as the father of the project, abandoning your child will look terrible in the eyes of the community. I would call this his biggest blunder to date - at least from my POV.
  4. I got a BBC Micro not long ago. Other than replace the capacitors to bring it back to life, and a little Basic coding, I haven't done anything with it. I do want to make a game for it though. For some reason there's no cc65 support for the BBC Micro. I was also thinking that working on adding that support may be a good thing. The fact that it doesn't have support does make me wonder if it may be harder than I imagine. I could easily make this runtime run on the BBC and it's not really tied to SHMUP games. Maybe when the time comes I'll think of something where I can repurpose this for some other 6502 based systems - I want to try and get some game I made on a lot of these. I love learning how they all work. I was astonished at how awesome the Atari 800 is technically, given it came out in 1979!
  5. Hi, Here's a video that shows the relatively early Shoot 'Em Up Engine I am building for the CX16. In the engine, enemies are scripted, and the enemies are active objects with program counters, stack pointers, local memory, etc. all in a cooperative multi-tasking environment. There's still quite some way to go before I am ready to make an actual game with this, but so far, it's looking really promising. Iteration time for building things is very quick and I love the idea of giving designers, musicians and artists the tools to do what they do (partly because I can't do that stuff ;) Thank you Stefan
  6. If you are using the default cx16-asm.cfg then it does indeed start at $22. With cc65 it's a good idea to get to know the .cfg files and how they work. You can do some useful stuff if you need to, such as aligning segments, making your own, etc.
  7. The Spectrum Next is (for a short time) available for order again. According to the latest update, production will start early next year so there's a bit more time to order one. Here's the link: https://www.specnext.com/shop/
  8. Instead of .org $22 just use .zeropage. Here's a quick discussion about this: https://www.cc65.org/faq.php#ORG I don't use .org at all. I use .code for the code and I do use .data for variables and .rodata for read-only data (not enforced, just the way I like to organize stuff). Then it's all nice and neat and the linker puts it where it needs to go. here's an example (I saved as main.s): .zeropage myzpptr: .res 2 .code lda #<mystring sta myzpptr lda #>mystring sta myzpptr + 1 ldy #0 : lda (myzpptr), y beq :+ jsr $ffd2 iny bne :- : rts .data mystring: .asciiz "hello, world!" now compile with: cl65 -t cx16 -u __EXEHDR__ main.s -C cx16-asm.cfg and you will have main that you can run in the emulator with: x16emu.exe -prg main -run The -u __EXEHDR__ creates the basic stub (the sys 2061) for you. It's all very neat
  9. Getafix

    CPU meter

    The Apple II emulator, AppleWin, counts the cycles of a "step" and shows it on-screen along with the registers, etc. You can step over a line, routine or run to a breakpoint and you can see exactly how many cycles that took. It's really great for profiling code. That's one area where x16emu could get a lot stronger - better debugging tools. Even with final hardware, having the ability to debug and profile in the emulator will be awesome and will lead to better quality software. Hopefully, over time, x16emu keeps getting features such as that.
  10. A couple of reasosn it looks like it does. I was trying to use the CX16 APIs as much as I could (this was also a learning exercise for me). The grid markers are drawn using the Graph Put Char API, which uses GEOS fonts. If I remember correctly, the put graph char API uses a proportional font, which is not what I needed for the menu or the move log. The Console API did use a mono-space font but the API wasn't well suited to how the menu code wanted to work, so I ended up using the regular text in Layer 1 for the menu and log, and the graph API to put the grid markers into Layer 0. I think you can add your own GEOS font for the Graph API but I don't know anything about GEOS so I didn't explore that route any further. Also, if I remember correctly, the built-in (regular text) font on Layer 1 is a little too wide to look nice when used as a grid marker. When I look at the screenshot now, it doesn't look great. It's probably worthwhile looking into GEOS fonts and making or finding a font that works for all cases.
  11. I did spend a bit of time looking at the "engine" and as I suspected, there are bugs for sure. Casteling can cause grief and corrupt the DB, for example. It may be worth my while to fix the bugs but I think I'd really like to rewrite the whole engine and just keep the interface to the UI (and thus have all the versions still work), now that I have been shown some chess programming resources. I don't need the game to be great, but it would be nice if it could play a fairly descent game of chess. I am just busy with a couple of other things so I think I'll just leave it as is, for now.
  12. Got my registers mixed up! Sorry about that.
  13. I just typed this in: .code lda #8 tax tay jsr $ffba lda #$a ldx #<filename ldy #>filename jsr $ffbd stz $0 lda #$70 sta $1 lda #0 ldx #0 ldy #$90 jmp $ffd8 filename: .byte "bankxx.prg" I compiled with cc65 using: cl65 -t cx16 -u __EXEHDR__ cx16.lib .\save.s -o save.prg -C cx16-asm.cfg I get BANKXX.PRG in the folder where I have the code (save.s), by using the command line (windows Powershell) ~\Games\CX16\x16emu.exe -prg .\save.prg -run I tried omitting the setting of x and y before calling SETLFS and it did not work. I know 1 and 0 worked, but 8 and 8 also worked so something of what @Greg King said made sense, but it's not quite arbitrary? I will stick with a/x/y 8/0/1.
  14. Same code works for me in r38 but I have the SETLFS parameters like this (a/y reversed from how you have it): (for completeness - I also call SETNAM before SETLFS) lda #$00 ; logical number ldx #$08 ; device 8 ldy #$01 ; secondary address jsr SETLFS
  • Create New...

Important Information

Please review our Terms of Use