Giter Club home page Giter Club logo

Comments (6)

ivop avatar ivop commented on July 19, 2024

Proof of concept. Created a pull request here: #39

from cpm65.

davidgiven avatar davidgiven commented on July 19, 2024

Ah. I just did it in #40!

It'll actually load any one-extent file with arbitrary block numbers (so the file can be fragmented). There are currently two versions, for large disks and small disks, but I'm not sure it's worth it --- it ended up being only 245 (discardable) bytes. I was able to drop one of the reserved tracks on the Apple II with this, which is great because it opens the door for data disks which don't have the BDOS and CCP on them (although they'll still need the reserved track).

from cpm65.

ivop avatar ivop commented on July 19, 2024

Sorry, I couldn't resist trying it out myself ;)

My loader is 71 bytes, but it has more restrictions.

Edit: I'm actually very happy with it in the Atari port, as it removes the need to manually adjust the number of bootsectors to load in case the size of BDOS changes. I think it's worth the 71 bytes. It went from three to one reserved track. I'd like to keep it :) Perhaps you can copy it over to the other systems, or turn it into an include (as it needs hardcoded dph values)?. Only the Apple 2 port needs a small modification as it doesn't use a sector_num buffer (which is modified directly by my loader).

from cpm65.

davidgiven avatar davidgiven commented on July 19, 2024

The intention is that the loader gets discarded after use, so it doesn't matter how big it is. It looks like the Atari port doesn't discard anything, so it's not appropriate there, so I have no objection to using yours.

(Although I think the Atari port could be made to discard its init code --- in the boot sector you get to specify the load address, right? So you could do the intial load somewhere high, then copy the resident bits down to their final address, before loading the BDOS. When you run it, all the init code gets overwritten. The PET ports do this.)

from cpm65.

ivop avatar ivop commented on July 19, 2024

I have converted it to your new loader anyway. I like it to be consistent with the other ports. Right now I only discard part of the init code by overwriting it with the directory buffer. I'll look into loading it somewhere around $3000 and copy just the bios down to $0500. Should still work on a 16kB 400, 800 or 600XL then.

from cpm65.

davidgiven avatar davidgiven commented on July 19, 2024

(closing for cleanup)

from cpm65.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.