Jump to content


Popular Content

Showing content with the highest reputation on 05/02/21 in all areas

  1. 6 points
    Hi I'm Carles from Barcelona I'm 50: I got first zx spectrum when I was 13 then I learned machine code... Always loved spectrums. After I learned to program 68000 with atari st, also had an amiga but never get too in deep... Lots of computers later. Last year I got my first "near commodore 64" the c64. I liked. But I didn't feel it a real computer like a zx-uno or spectrum next (even the advanced virtual machine feels more real). So I got the real thing: an original 64, after a 64c and after a c128 (woooo there's a z80 in!!). I've seen your project and I think it could be a lot of fun... so, here I am.
  2. 3 points
    An important point to bear in mind that the key goal is not getting connected to a small share of the population who may be mildly interested, but in getting connected with the even smaller share of the population who may become really interested. A thousand people of high school / college age engaged in various types of development would make for a very healthy ecosystem, and with a common online meeting point available, they could be scattered all around the globe. And that's a tiny, tiny percentage of all of the younger people there are around the world. And really, that is not contacting each of those thousand, but getting a few in, and they share it in their social media networks, and it spreads from there. What the project needs to do is precisely what it is doing ... get the system finished, have good documentation, have a lot of freely available programs, pretty much all with source code, and a supply of people perfectly happy to answer questions about how they did this or that. The process would be young people coming across it, being intrigued, looking into it, getting interested, starting to dabble, getting more interested, and then starting to share their experience with like minded people in their social media networks. It's a pretty organic process, so it can't be forced, but the project can set up the conditions that lower the barriers to it happening. And then, if it happens, it happens.
  3. 1 point

    Version 1.0.0


    This is my second "Double PETSCII" demo. But this time around, the screen resolution is higher, and it is not hand designed PETSCII pictures, but instead it is an imported picture. Besides PETSCII, there is also a scrolling effect, and a wavey effect. The demo is written in KickC, and the PETSCII editor is once more the alfa version of HyperPetscii. The link to this can be found here: https://hyperpyxel.com/?p=229 Note: It is still pretty unstable and does not work well on a browser in the MAC for some reason. If you cannot run it on an emulator, you can see it on youtube here: https://youtu.be/kwLtU9fACpE Keep cool, and keep it PETSCII.
  4. 1 point

    Version 1.0.0


    The Commander X16 8-BitCoin Miner application supports the mining of a notional crypto currency which I refer to as 8-BitCoin which has no monetary value but perhaps you can gain a bit of notoriety by posting snapshots of rare results on the Commander X16 Facebook page, and perhaps this application will inspire those unfamiliar with BitCoin to learn a bit more about it. The Commander X16 8-BitCoin Miner application is based on Bitcoin Miner 64 by YTM/Elysium (https://github.com/ytmytm/c64-bitcoin-miner) which was inspired by stacksmasher's GameBoy miner (https://www.youtube.com/watch?v=4ckjr9x214c). Bitcoin Miner 64 supports a demo mode as well as a cooperative mining mode which interfaces to an eternal process running ntgbtminer (https://github.com/ytmytm/c64-ntgbtminer). I don't know of any way of communicating with an external process from an application running on the Commander X16 emulator, so I removed the cooperative mining mode and focused on enhancing the standalone demo mode in the port to the Commander X16. Enhancements include the ability to randomize the block data, keep track of total number of hashes and associated 8-BitCoin value earned, display the best and last hash results and associated nonces and 8-BitCoin values, and to load and save state which allows a user to restore their data between sessions. I've created and posted a C64 version as well as a CX16 version. For the CX16 version a single penny is earned for the first leading zero in the binary representation of the hash result and each subsequent leading zero increases in value by a 2x factor. When the first one is detected in the binary representation of the hash result, each subsequent zero decreases in value by a 2x factor until the value is less than a single penny. Since the CX16 clock rate is approximately 8x the C64 clock rate, the earned value for the C64 version is calculated by multiplying the earned value for the CX16 version by a factor of 8. When the 8-BitCoin Miner application is started a title screen is displayed at which point the user can press any key to advance to the main menu. At the main menu the user can randomize the block data, start mining, and save and load the mining state via the R, M, S, and L keys respectively. When the block data is randomized any previous best and current hash results are cleared but the total hash count and associated earned value are retained. The best and last hash results are cleared and the total hash count and associated earned value are initialized to zero when the 8-BitCoin Miner application is started, but loading a previously saved state will restore the best and last hash results and the total hash count and associated earned value. There's a single "BITMINER.DAT" save file, so be aware saving will overwrite any previous existing version of this file. Likewise when you perform a load command you will lose any results accumulated since the last save operation. If you want to save and load state you'll probably have to download the application because I doubt that these features will work properly with the online emulator associated with the "Try it now" feature (since there's the possibility of multiple simultaneous users and only a single save file which doesn't seem to be retained between on-line emulator sessions). When mining the user may return to the main menu by pressing the M key. I tested the CX16 version on the CX16 emulator revision R38 and I briefly tested the C64 version on the VICE C64 emulator and the C64 mini. The save and load functions seem to work on the VICE C64 emulator but not on the C64 mini. However, you can use the save and load functions provided by the C64 mini to save and restore the state between mining sessions. Here's some C source code which is equivalent to the implementation and intended to clarify calculation of the earned value from the hash result. The calculation of hashWord is not shown but occurs in the ... portion between the variable declaration and subsequent code. uint32_t hashWord, value, bitMask, deltaValue; . . . value=0; bitMask=0x80000000; deltaValue=1; while((bitMask!=0) && ((bitMask & hashWord)==0)) { value+=deltaValue; bitMask=bitMask>>1; deltaValue=deltaValue<<1; } bitMask=bitMask>>1; deltaValue=deltaValue>>1; while((bitMask!=0) && (deltaValue!=0)) { if ((bitMask & hashWord)==0) value+=deltaValue; bitMask=bitMask>>1; deltaValue=deltaValue>>1; } #ifdef C64 // multiply value by 8 for C64 version value=value<<3; #endif
  5. 1 point
    My 8-bit collection is finally complete. Picked up this Pet kbd equipped VIC-20 recently. Does it work? (not important). Someday it will...
  6. 1 point
    I didn't think anything bad, I just felt my comment was so "obvious" that I didn't want anyone to think I was talking down to them. I'm glad we both understood the other.
  7. 1 point
    Just uploaded a new version of the assembler that can now assemble large programs to any memory location in system ram. (because it now uses banked ram to store the output)
  8. 1 point
    By all means look at the generated assembly code: Some things that prog8 generates are *ahem* very inefficient when compared to had written asm. I suggest finding a few very frequently called short routines in your code and only try tor replace those with %asm {{..}} I'm fairly certain you only have to do this on a few places to make it run fine on the C64 as well, it already ran pretty good as it is! It can also help to split up long one-line expressions into several steps, sometimes even using temporary variables or one of the 'virtual registers' cx16.r0..r15 , this sometimes avoids prog8 generating slow stack-based evaluation code
  9. 1 point
    This is, of course, a distinction that is far more disrespected in use than respected.
  10. 1 point
    Amd EPYC around 8.3 billion transistors on a die 6502 around 3500 transistors that makes 2.37 million 6502's on one die.
  11. 1 point
    In this week's vlog I answer questions from patrons, including going into why I got into the Commander X16 in the first place and what my plans are for more X16 games and content.
  12. 1 point
    I think the most lasting feature of retro computers is the fact that they're simple enough that you can have a good understanding of everything in there. There're only a small number of chips and subsystems to learn about when it comes to programming, and if you're more into the hardware side of things, the bus architecture is fairly straightforward and accessible too. What's cool is that even though there's only a small number of things to grasp (comparatively), any one of them can become this rabbit hole of ever-deepening knowledge and skill. Speaking of the C64, there are people who keep finding ways to push SID - it's not been terribly long ago that the technique (I forget what the sceners call it) where you can use the triangle waveform to output PCM in much higher quality than the old 4bit master volume technique. Then there are others who go down the VIC-II rabbit hole and create techniques like FSP(?) for fast horizontal scrolling of bitmaps, etc. But I wouldn't say you have to be at these levels to say that you understand the computer very well.
  • Create New...

Important Information

Please review our Terms of Use