Coder Social home page Coder Social logo

ldos's Introduction

LDOS v1.31 (Leonard Demo Operating System)

Introduction

LDOS is a framework to easily build Amiga multi-part demos. You can chain several amiga executable effects. LDOS is managing memory allocation, floppy disk loading, data depacking and image disk creation. LDOS also includes an HDD loader to run your demo from harddisk. LDOS toolchain is running on Windows platform.

Please like on your lovely Pouet website :)

Demo sample

LDOS repository also comes with a demo sample so you can see how to use LDOS in real life application. Just run demo/build.cmd to build the sample LDOS demo. It will produce "ldos_demo.adf" file. You can use it in any Amiga emulator or write on real floppy and test on real hardware. The sample demo is made of 3 files (look at demo/script.txt)

  1. parcade.mod ( mod music file )
  2. Sprite loader: few animated sprites during the loading & depacking of the second part
  3. Greetings: large bitmap scroll (fun fact: this part is a conversion of Greetings part of Atari "We Were @" demo )

Building LDOS

LDOS comes with pre-assembled binaries. ( ldos/bin ). But if you want to modify & build yourself, just run ldos/src/build.cmd

How to use LDOS

Each of your demo FX should include LDOS header

      include "../../ldos/kernel.inc"

Each LDOS function is called using JSR. For instance, if you want to pre-load the next FX from floppy disk, just do:

			move.l  (LDOS_BASE).w,a6
			jsr LDOS_PRELOAD_NEXT_FX(a6)

You can open ldos/kernel.inc to see all LDOS functions

Each demo part should be a standard Amiga executable.

LDOS Technical details

  • LDOS should run on any Amiga ( from A500 to 060 )
  • LDOS is primary made for A500 demo. If ran on higger amiga, CPU caches are switched off
  • LDOS is using LightSpeedPlayer (LSP), the fastest Amiga MOD player ever
  • Generated demo is 1MiB RAM targeted ( with at least 512KiB of chip memory )
  • Use ARJ mode 7 packer
  • LDOS is loading & depacking at the same time. Most of demos are loading, then depacking. LDOS depacks while loading, so basically depacking time is free.
  • LDOS use Light Speed Player (fastest MOD player ever)
  • Just put all the exe of your demo in a script.txt and run ldos/bin/install ( look at demo/build.cmd script )
  • All files are automatically packed using Arj7, you don't have to worry about packing
  • fun fact: All data on the disk is packed except the small bootblock code
  • LDOS bootblock is 292 bytes only and contains the only unpacked data of the disk. Packed data (including FAT) starts right after these 292 bytes
  • LDOS cluster size is 2 bytes only ( no 512 bytes waste per file :) )

Credits

Amiga demos using LDOS

LDOS is production ready :) Several Amiga demos are already powered by LDOS:

Cycle-Op by Oxygene. (3rd place at Revision 2023, Amiga compo)

https://www.pouet.net/prod.php?which=94129

Cycle-Op

The Nature of Magic by NGC. (6th place at Revision 2023, Amiga compo)

https://www.pouet.net/prod.php?which=94172

The Nature of Magic

The Fall by The Deadliners & Lemon. (1st place at Revision 2018, Amiga compo)

https://www.pouet.net/prod.php?which=75773

The Fall

De Profundis by The Deadliners & Lemon. & Oxygene (2nd place at Revision 2019, Amiga compo)

https://www.pouet.net/prod.php?which=81081

De Profundis

AmigAtari by Oxygene (3rd place at Revision 2020, Wild compo)

https://www.pouet.net/prod.php?which=85276

AmigAtari

Mel O Dee by Resistance (2nd place at Xenium 2021, Wild compo)

https://www.pouet.net/prod.php?which=89698

Mel O Dee

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.