[HN Gopher] Transwarp v0.84 - 50x fastload system on plain vanil...
       ___________________________________________________________________
        
       Transwarp v0.84 - 50x fastload system on plain vanilla stock 1541
       (use with C64)
        
       Author : sandebert
       Score  : 39 points
       Date   : 2022-10-09 13:37 UTC (9 hours ago)
        
 (HTM) web link (csdb.dk)
 (TXT) w3m dump (csdb.dk)
        
       | jandrese wrote:
       | Amazing. It should be noted that 50x faster is 20KBps, the
       | original 1541 firmware was stupendously crippled. Loading the
       | entire C64 memory space in 4 seconds is a tremendous quality of
       | life improvement for a C64 user. Heck, you can read the entire
       | disk in less than 9 seconds.
        
       | corysama wrote:
       | Any explanation of how it works?
        
         | bonzini wrote:
         | Something here: https://www.c64-wiki.com/wiki/Transwarp
         | 
         | Also: "Plain Commodore GCR encodes 4 bytes raw to 5 bytes on
         | disk, Transwarp encodes 3.5 bytes raw to 5 bytes on disk. (Thus
         | only 223 = $df instead of 256 bytes per block, the 224th byte
         | is the checksum.)
         | 
         | One trick is to encode those 3.5 bytes using a subset of plain
         | Commodore GCR, such that it works just fine with d64 and
         | regular transfer/copy solutions. Part of that trick is that
         | decoding a GCR byte drive-side just takes a table lookup (4
         | cycles). =)"
        
       | snvzz wrote:
       | And it's at least 100x cooler than most fastloaders, because it
       | is Open Source (GPLv3 or later).
       | 
       | This isn't just "yet another fastloader". :)
       | 
       | >edit: It's actually open source!
        
         | thedonncha wrote:
         | I haven't looked at it but I bet it's written in handwritten
         | ASM. You can disassemble that. It probably won't be easy but
         | with a memory map of the C64 and 1541 you could tell how it's
         | working and learn from it.
        
         | thedonncha wrote:
         | I just checked the newest release on csdb and it has a .s
         | source file you can download. It is released under the GPL. :)
        
         | classichasclass wrote:
         | Wish granted: https://csdb.dk/release/download.php?id=260085
         | 
         | It's even GPL.
        
           | snvzz wrote:
           | And so is the new version:
           | https://csdb.dk/release/download.php?id=264898
           | 
           | I couldn't find it when I searched earlier, but it's there in
           | plain sight, among the other downloads!
           | 
           | I 100% expected a link to a git repo. Google was also, as
           | usual, useless.
        
       | NateLawson wrote:
       | These typically work by changing the media bit encoding to be
       | easier to process with 6502 instructions instead of a lookup
       | table. Others simplify the table and use more RAM so that fewer
       | lookups are needed. I haven't looked at how Transwarp works yet
       | but it seems like the latter.
       | 
       | Some discussion with the author:
       | https://www.lemon64.com/forum/viewtopic.php?t=78558&start=0
       | 
       | There's a newer version here: https://csdb.dk/release/?id=214786
       | 
       | Release notes:
       | https://csdb.dk/release/?id=214786&show=notes#notes
       | 
       | More details from another advanced loader:
       | 
       | https://www.linusakesson.net/programming/gcr-decoding/index....
       | https://www.linusakesson.net/software/spindle/v3.php
        
       ___________________________________________________________________
       (page generated 2022-10-09 23:01 UTC)