Giter Club home page Giter Club logo

c128cpm's Introduction

CP/M for the Commodore 128

This repository contains scripts, tools and source needed to build a Commodore 128 CP/M system disk.

You're viewing the master branch, which contains Kerberos SRAM expansion support, plus fixes and speedups for 80 column mode from the cpmfast release by Linards Ticmanis.

Currently only CPM+.SYS is built from source, while the rest of the binaries are taken from the updated cpmfast release.

Download CP/M for the Commodore 128

More information on the cpmfast modifications.

Building

macOS

$ ./build-osx.sh

If everything goes well, a new image cpm+128.d71 is created.

Other unixes - Linux, WSL (Windows 10)

It's possible to use the Windows Subsystem for Linux to build. Tested with Ubuntu on Windows 10, you'll need the following packages

$ apt-get install build-essential libreadline-dev libncurses-dev unzip

Then just run

$ ./build-unix.sh

c128cpm's People

Contributors

csoren avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

c128cpm's Issues

interrupt risk in trans$ccp

trans$ccp:

After loading the CCP it is transported to E000 in bank1. For this the bank is changed to io1 with 4k shared.
During this action the interrupt handler is enabled and there is a chance the interrupt fires while the wrong banking is in effect.
This trans$ccp should be surrounded with "di" and "ei".

(I ran into this problem while adding a U2 drive-image handler to the drive table, this causing a hangup in the trans$ccp.)

8563 problems - clarification

None of the CP/M implementations I've tried can update the (otherwise working) VDC screen on my C128, and it's hard to find any reliable information about how the Z80 accesses the VDC. Does the original CP/M access the screen through the 8502, like it apparently does with some other I/O functions? If so, does your version do it the same way? Or do both, as I suspect, access it directly through two memory-mapped registers at $d600/$d601?

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.