Jump to content

Leaderboard


Popular Content

Showing content with the highest reputation on 01/20/21 in all areas

  1. 4 points
    If the YM2151 becomes unavailable it would be replaced with an FPGA on a daughter card with pin headers to plug into a dip socket. But we are only crossing that bridge if it becomes necessary. Sent from my iPhone using Tapatalk
  2. 2 points

    Version 0.8.1

    51 downloads

    cc64 is a small-C compiler, written in Forth, targeting the 6502 CPU. It's hosted on the C64, on the C16 with 64k RAM, and now on the X16. Runtime targets are available for all 3 platforms, on each host, allowing cross-compilation. The code lives at https://github.com/pzembrod/cc64. It's licensed under the 2-clause BSD license: https://github.com/pzembrod/cc64/blob/master/COPYING See https://github.com/pzembrod/cc64/blob/master/Usage.md for usage. See https://github.com/pzembrod/cc64/blob/master/C-lang-subset.md for details about the supported subset of C. Released under the 3 clause BSD license.
  3. 2 points

    Version 0.1.0-alpha

    28 downloads

    If you have problems with the audio quality in the "Try it now", download and run in the offline emulator with the command line option "-abufs 12" or more. The CONCERTO synthesizer is what I intend to be the sound generating side of a music making software for the Commander X16. It uses the 16 voices of the PSG and aims to get the very maximum out of them. It is not quite there yet but has a lot of strengths already. The main features: 32 synth patches 16 monophonic channels, each playing a dynamically assigned synth patch up to 6 oscillators per voice up to 3 envelopes and 1 LFO per voice pitch, volume and pulse width modulation volume control per voice ("velocity") save and load presets (currently 1 slot - yee!) Features that are planned (for the sound engine): wavetables (à la MSSIAH) pitch bend dynamically assignable modulation (e.g. for influencing vibrato depth while playback) snappier envelope option somehow include the YM2151 multi step envelope generator (MSEG) I wanted to put this out here so that people can work with it, even though it is still far from finished. The reason is simple: I don't know if I will finish it and even if yes, I don't know when. What can you do with it right now? You can use the sound engine independently from the GUI, e.g. for playing music and/or sound effects in your game. You need to provide your own player at the moment, but the sounds are ready to be used by it. You could also use the GUI and reprogram it to do something completely different, i.e. use it as a template for your own application. For more information, look into the README and the source files and/or send me a PM. If you find bugs, please let me know, or post an issue on GitHub. https://github.com/biermanncarl/cx16-concerto
  4. 2 points
    cc64 X16 View File cc64 is a small-C compiler, written in Forth, targeting the 6502 CPU. It's hosted on the C64, on the C16 with 64k RAM, and now on the X16. Runtime targets are available for all 3 platforms, on each host, allowing cross-compilation. The code lives at https://github.com/pzembrod/cc64. It's licensed under the 2-clause BSD license: https://github.com/pzembrod/cc64/blob/master/COPYING See https://github.com/pzembrod/cc64/blob/master/Usage.md for usage. See https://github.com/pzembrod/cc64/blob/master/C-lang-subset.md for details about the supported subset of C. Released under the 3 clause BSD license. Submitter pzembrod Submitted 01/19/21 Category Dev Tools  
  5. 2 points
    Nope. VERA is complete. The spec is set. Only bug fixes if there are any here on out. Sent from my iPhone using Tapatalk
  6. 2 points
    Or 320*240 @ 256 colors. (76,800 bytes of the 129,472 available) Or 640*480 @ 4 colors. (76,800 bytes of the 129,472 available) Or double-buffered 640*480 @ 2 colors. (76,800 bytes of the 129,472 available) Or 640*480 @ 4 colors plus a second layer 640*480 @ 2 colors. (115,200 bytes of the 129,472 available) Clever image authoring and color cycling can animate displays without having to modify pixel data. Or using the second layer as a tilemap for repeating 8x8 or 16x16 tiles at 256, 16, 4, or 2 colors. Tilemaps can specify their palette offset on a per-tile basis, so you could have a 16-color tilemap with up to 16 palettes. There are lots and lots of things the VERA can do. Edit: And I almost forgot about parallax effects. With clever authoring of tilemaps, combined with layer scrolling, you can create parallax effects. With clever use of line IRQs you can fake multiple layers of parallax. With strategic use of sprites as well you can fake an almost arbitrary number of overlapping layers of parallax, as long as you don't go over the 801 work units of sprite data allowed per line (described elsewhere on the forums).
  7. 1 point
    Concerto View File If you have problems with the audio quality in the "Try it now", download and run in the offline emulator with the command line option "-abufs 12" or more. The CONCERTO synthesizer is what I intend to be the sound generating side of a music making software for the Commander X16. It uses the 16 voices of the PSG and aims to get the very maximum out of them. It is not quite there yet but has a lot of strengths already. The main features: 32 synth patches 16 monophonic channels, each playing a dynamically assigned synth patch up to 6 oscillators per voice up to 3 envelopes and 1 LFO per voice pitch, volume and pulse width modulation volume control per voice ("velocity") save and load presets (currently 1 slot - yee!) Features that are planned (for the sound engine): wavetables (à la MSSIAH) pitch bend dynamically assignable modulation (e.g. for influencing vibrato depth while playback) snappier envelope option somehow include the YM2151 multi step envelope generator (MSEG) I wanted to put this out here so that people can work with it, even though it is still far from finished. The reason is simple: I don't know if I will finish it and even if yes, I don't know when. What can you do with it right now? You can use the sound engine independently from the GUI, e.g. for playing music and/or sound effects in your game. You need to provide your own player at the moment, but the sounds are ready to be used by it. You could also use the GUI and reprogram it to do something completely different, i.e. use it as a template for your own application. For more information, look into the README and the source files and/or send me a PM. If you find bugs, please let me know, or post an issue on GitHub. https://github.com/biermanncarl/cx16-concerto Submitter kliepatsch Submitted 01/20/21 Category Audio Apps  
  8. 1 point

    Version 1.0.0

    16 downloads

    An attempt at creating the classic raster bar effect for the CX16. This is implemented by timing the delay between changing border color exactly right to change the color on each line (in the r38 emulator). The timing may be off on the real hardware - depending on whether the emulator is exact. The source code is written in KickC, and included as an example when you download the compiler. https://gitlab.com/camelot/kickc/-/releases
  9. 1 point
    Hi all, I recently stumbled onto this website. My reason for being here is mostly to track progress, and as a potential buyer when x16 is for sale. I really like the project, it is almost like looking forward to the next cool computer, but a next cool computer in an alternative past. I am a developer/techlead myself, doing solutions for b2b. But as a Hobby I have spend tons of time playing with and programming the C64 and the Amiga, programmed basic, c & assembly 6502/68000. Also other weird and wonderful languages, and a bit of hardware soldering. No Python though, not really my thing. Right now though I am doing "hobby coding" in Javascript, a X16 sprite exporter to my paint program, and deciding if I will do some c or ASM stuff as well for the X16, or keep to BASIC. I got here when I was playing around with BASIC a bit. I started at a web page where you can directly type in and run Apple basic, but soon ended up modifying Apple basic to become more like commodore basic. (I was adding things like sprite support and so on to the Basic, and a commodore 64 sprite displaying capability. Anyway while doing that I happen to stumble on the X16 emulator webpage, which already had all that. So yeah apple basic with c64 sprites is how I got here I really hope the web ide / emulator will continues to be developed, as I like it a lot, almost more then the "real" emulator. Fantastic project otherwise. keep up the good work! Same for the YouTube channels 8-bit guy, and retro recipes, just a tad to addictive Greetings from Sweden
  10. 1 point
    ok, it seems that feature is not there in this category, to specify the executable. (And I'm not really happy to move it to the wrong category), so for now it'll stay without the try it now feature. Maybe the end result, when the tutorial is done, can get it's own entry in games, if it turn out interesting enough
  11. 1 point
    Did you specify a .PRG file as the executable?
  12. 1 point
    That's a general issue with the emulator mouse support. Nothing you can do about it from inside the X16 code. What I find helps is to drag the mouse across the screen until it stops as the edge, then bring it back across all the way to the other side, then back to the middle. From there, do the same in the vertical directions, and the mouse should be synched with emulator.
  13. 1 point
    I am pretty sure that you can add the Try it Now option in any category. Just now found that it is not available in "Tutorial Apps" at least. I just tested in Development Tools category without any issues. Your program does not need to have any special name, but you do need to tell the Try it Now function what the program name is. You do need to enable it. As you can see, I am adding irclock.prg. I believe that you need to ensure that you use the correct case when you write the filename to run ( in my case, it is all lower case ). Others know a lot more about this than me, but I believe that you can upload a zip file with several binary files in it along with your program. This is the reason you need to specify the filename to run.
  14. 1 point
    See, there are workarounds that you haven’t even thought of. Some of the demos exploit the limits. Sent from my iPhone using Tapatalk
  15. 1 point
    Hi there, I had this problem - if you upload anything to "tutorial apps" the Try It Now button is not available. It is available in the Demos section.
  16. 1 point
    I love the way the little 'tab's work with the petscii lines.
  17. 1 point
    Thanks I am glad that you like what you have seen so far. Maybe you should give yourself one or several smaller toy project before tackling such a big project with 6502. That's how I've done it, anyway, and it helps understand the source code of others better. Anyway, if you are going to look at the source code, take a look at the Readme first. This will give you a rough idea where to start looking for what. Is the problem with the mouse that you cannot reach every area of the UI? If so, simply move the mouse across over the whole window. This somehow resets the "mouse coordinate offset" or something so that you can get to everywhere. I am not worried about the decoupling of the tracker channels with the hardware channels. Because the hardware PSG channels are identical, the user won't notice it. And in the cases where you actually want to continue using the same PSG channels, you can do that by using portamento (well, I'd have to check the details in the source myself). I like the idea of somehow monitoring how many of the PSG channels are in use at any time. Similar to how Synth1 does it (one of the most iconic VST synths).
  18. 1 point
    Indeed that sounds beautiful! I was having some trouble with using the mouse when running it on my workstation (Linux) and haven't had time to take a look at that (looks like an emulator / desktop environment issue - nothing to do with Concerto). I was able to use it via Try It Now and though it did skip some, it was enough to hear the demos and make some nice juicy squares and super-saws. Very lovely! I definitely agree, multi-voice instruments have some clear benefits. The challenge is trying to figure out how to manage that as I'm not aware of a tracker that had dynamic channels and part of the power of a tracker is allowing the composer very precise control. I wouldn't want to take that away but having multi-voice instruments add a ton of convenience and avoids a lot of monotony and repetition (e.g. with single voiced instruments, there would have to be a lot of channel duplication and in-pattern effects to do similar things). I like the idea of UI hints with the channel skipping thing but it might be better to simply have some sort of UI queue as to which voices are in use. That takes away a bit of flexibility (the composer no longer would know which voices they are about to clobber if they really want to try and use all 16 channels at the same time) but that's probably ok. The # voices thing is probably not something I'll worry about anytime soon anyway - there's a lot to do in going from zero to a full tracker and trying to do all that while learning assembly is a very tall mountain. Given some of the KickC conversations I thought about perhaps considering that but learning 6502 is one of the main things I want to get out of the X16. Point is, this will probably be a long project Anyways fantastic results with your synth! Kudos for putting together such a rich sound engine in a very short period of time! It's quite wonderful! I took a quick look through the source code but will try to take a look in earnest later today.
  19. 1 point
    I have finally come around to publishing the CONCERTO synth engine, along with its source. (Link to GitHub in the description). Now you can see why I think multi-voice instruments are a useful thing Try out some of the timbres and the demo loops (buttons at the bottom).
  20. 1 point
    I'm really looking forward to try this out! Very nice achievement.
  21. 1 point
    Thanks for cheering along! Good point about Ham. Somehow that slipped through the quality control. I mustn't be so ham fisted! I may well get a license. I need to get a good antenna first, ideally upward pointing.
  22. 1 point
    Hello! My name is Damian, I'm a 47yo Graphic and Web Designer and Front-end Developer from Madrid, Spain (though I was born in Argentina). I have a 16yo son. As a lot of you, I started with BASIC on a TI 99/4A aged 11, then on a Commodore 64 my father bought us. I also made a few things on a Timex Sinclair 2068 that my cousins had, and played on a friend's Commodore 128, and then an Amiga 500. Later in life, when I was around 20 I bought a second-hand Mac Plus, and I've been a Mac user ever since (kind of like Adrian, from Adrian's Digital Basement, I've have almost no PC contact, except in the professional space). I saw this project on the 8-bit Guy's channel, and was really happy that it got traction, because I've been thinking of something similar for a long time. My idea was called "Maelstrom Color Computer" and I even made a logo for it: But I also wanted to make a retro-computer with BASIC and instant-on features that included a case with integrated keyboard, in the line of the Home Computers of the 80's. The thing with this is that everything related to plastic injection is so expensive that I think it's highly improbable that such an idea can be made in the hobby scene. So, I'm just happy that this project is alive, and will follow it with great interest. Since I never learned to program in assembler for the Commodore, I'm interested in learning this time around, so I'm watching the videos by Matt Heffernan, and found the Easy 6502 site. I hope I can learn enough and make something interesting. I want to specially praise the work done by Perifractic with the logo, since I find it wonderful. I like it more the more I look at it. Kudos! Other than that, I can say that a few years ago I learned how to solder and taught myself a bit of analog electronics, enough to build my own guitar pedals (I already built around 35!), and I'm designing my own guitar pedal circuit (a combination of booster and overdrive). And also recently bought a Resin 3D printer and I'm planning to use it to help me create my own pinball machine, using the Open Pinball Project platform and guides. It's a long and difficult project, but I'm really excited about it. I invite you to visit my site (it's only a single page with a Javascript animation, but I think you guys may appreciate it): https://damianvila.com And if you want to know a bit about things I made in the past for other projects, I made a little page with a few of these works, that you can see here: https://damianvila.com/hodgepodge/ or go to my Dribbble account: https://dribbble.com/damianvila Thanks, and sorry for the lengthy introduction. See you!
  23. 1 point
    Welcome Damian. Thank you for your kind words! Means a lot [emoji106][emoji973]️ Your logo looks really great too!
  24. 1 point
    Well, this is a paradigm changer! Now we can compile C code directly on the Commander, no need for external compilers.
  25. 1 point
  26. 1 point
    That sounds great to me. I will integrate it in my next version. I was also thinking that we might want to open a separate thread on this and discuss with the project owners and rest of the X16 community whether some kind of recognition standard for additional ROMs might be useful and desirable. If something like that came to be, then I could see an advantage in placing the identification string at the beginning instead of at the end of the ROM area, namely that it would allow it to be used also by ROMs which want to or need to replicate the Kernal jump table. It would also be in line with the CBM80 or CBMBASIC string at the beginning of C64 $8000 modules and the Basic ROM at $a000. Incidentally, I have just pushed "Publish" on cc64 v0.8 which contains the X16 port; I'll upload it here later today or tomorrow.
  27. 1 point
    Welcome! Sounds like we have similar backgrounds (including "no Python"), and similar reasons for being here.
  28. 1 point
    XC=BASIC is able to compile to platforms other than the C-64, however that branch of code is not yet officialy released. VIC-20 support is somewhat done and X16 can be added, too. It is relatively easy because the compiler's source code (the one written in D) does not need to be changed, only those .asm files that are platform-dependent must be copied and ported to the X16. It's basicaly a standard library that's less than 1K. If someone would like to contribute with code, I'll be happy (and very grateful) to invite you to the project. I'll also explain what exactly needs to be written. If anyone interested, let me know. Thanks
  29. 1 point
    I watched the Commodore ISS video yesterday. I cheered when you got a response from the transponder in the ISS. I've been looking for a Commodore compatible TNC, or at least a level shifter so I can use my Kenwood with my Commodore... if I ever get to that point, I'll point my beam skyward and try the same experiment. So now that you've seen how much fun ham can be, are you going to get a license? It would be fun to do some packet work over the APRS network... As a (maybe not so interesting) aside, "ham" is not an acronym and should not be written in all caps. Ham actually is short for "ham fisted amateur" and was a derogatory term used by commercial radio operators, back in the early 20th Century, before any meaningful regulation. https://en.wikipedia.org/wiki/Etymology_of_ham_radio
  30. 1 point
    I hail from the Montreal suburbs, I'm just darn happy to be here! I've been following the Commander X16 for a little while now and it just brings back memories. My first PC experience was a TI-99/4A in the early 80s then we got a Commodore 64 (which I believe is still functioning but in boxes in my parents house). That C64 brought me right into grade 7 when we purchased a 386 but still so many memories of the 64 and typing programs from Compute's Gazette. I've worked in various computer stores, corporate IT, sales, service technician, software trainer and software architect. Now I like to tinker with electronics and hardware and hoping to at some point find some retro hardware lying around somewhere and restore it.
  31. 1 point
    Hi @m00dawg and others, just as a heads up, I am preparing to publish an early version of my PSG sound engine in the next week or two. I know we are maybe going for slightly different routes because you are really into the tracker format, whereas I am more into the modern style DAW. So there may be a couple of things that probably won't fit into your concept, but if you take my code it may be more a matter of rearranging stuff rather than rewriting everything from scratch. I have made things like multitimbrality, envelopes, volume rescaling and pitch slides (for portamento in my case). I know it may be more fun to make all this by yourself (it's why I did it in the first place) but if you want some starting point you can take what I made. I will be willing to explain my code and discuss how things would need to be rearranged to suit your needs. As a clarification: I am currently talking only about the sound engine, NOT the playback mechanism. You can provide the playback mechanism. There an API for using the sound engine. Triggering and stopping notes. It still needs to be extended to support things like volume slides or pitch slides which I would definitely want to be possible with it.
  32. 1 point

    Version 1.0.2b

    2 downloads

    This program is written using kickc of Jesper Gravgaard. I'm helping him to create a framework encapsulating the CX16 vera in order to be able to quickly create graphical effects for games. This is a short demo and I hope you like it. This program uses the keyboard to progress through the program! So be sure to run this from the desktop, since the emulator on mobile phones do not have a keyboard!
  33. 1 point
    Thanks. This makes me wonder why Butterfield suggested we read the Zero Page variable directly. In fact, I found that by accident while browsing a really nice API list, here: https://www.pagetable.com/c64ref/kernal/ I finally finished my directory reader in assembly: it's basically a line-for-line translation of the BASIC code... it took a while to get the file open correctly, do the correct CHKIN, and all of the other fun stuff that goes along with it. Either way - now that I can read a directory, this is the first step to building my file manager.
  34. 1 point
    This is interesting. So the SA has to be 0 to make the $ work. Now that I know that, I am able to check some things off my list. Playing around with this, it looks like the directory is structured like this: Header: 2 byte Load address 5 byte binary data 18 byte label text 6 byte volume type (FAT32) File Entry: 3 bytes binary data (always 0 1 1) 2 bytes file size 26 bytes text (spaces, "filename" type) Final Entry 3 bytes binary data (always 0 1 1) 2 bytes MB free "MB FREE." 3 bytes 0 The only way to distinguish the "MB FREE" line from a directory entry appears to be the "M" in the position right after the file size. If this is a space, then there will be more spaces, followed by the quote (") and the filename, followed by another quote, some spaces, and PRG or DIR. Here's a quick BASIC program to read the directory and print it on the screen: I'm also working on a file picker, with a goal to eventually build an Orthodox File Manager on the system.
  35. 0 points
    The RAM in the Vera is integral to the VERA. We did look at external RAM but it would require a complete overhaul due to timing. And it substantially increases the cost. The next FPGA that has more RAM puts us into a package we don’t want. For the record they types of RAM that are compatible are quite expensive. Not to sound rude, but as is we have way more video memory and color depth than any other 8 bit system and part of the point is for you to come up with workarounds to the limitations. Sent from my iPhone using Tapatalk
×
×
  • Create New...

Important Information

Please review our Terms of Use