Description
DSKBuilder is a tool for compiling PC files onto a bootable Oric Disk.
DSKBuilder is provided as a group of files in a Zipped folder. They should be placed in the destinations specified below.
Filename | Description | Destination |
DSKBuilder.exe | DSKBuilder Application | OSDK/BIN |
Fantasmagoric.bin | Boot Sector 1 | OSDK/BIN |
Generic512.bin | Boot Sector 2 | OSDK/BIN |
Loader.tap | First file for Slideshow demo | SlideShow Project |
FirstLoad.s | Source file for Loader.tap | |
Colbeast.tap | HIRES Screen (Twilighte) | SlideShow Project |
Devil2.tap | HIRES Screen (Twilighte) | SlideShow Project |
Iso1.tap | HIRES Screen (Twilighte) | SlideShow Project |
Logo.tap | HIRES Screen (Twilighte) | SlideShow Project |
Map3.tap | HIRES Screen (Twilighte) | SlideShow Project |
Mark.tap | HIRES Screen (Twilighte) | SlideShow Project |
Night.tap | HIRES Screen (Twilighte) | SlideShow Project |
Output.tap | HIRES Screen (Libcaca Converted) | SlideShow Project |
Siltr3.tap | HIRES Screen (Twilighte) | SlideShow Project |
Snap.tap | HIRES Screen (Twilighte) | SlideShow Project |
SlideShow.dsk | Generated Disk (Use this as initial demo) | Euphoric Disk Dir. |
doc_dskbuilder.htm | This manual |
Editor Overview
General Guide
To Begin a new project, select New Project from the files menu and enter the name of the new project in the window that appears.
The dialog will close and you may now Add a new file to the compilation by pressing the Add Files button(+).
Any file may be added so long as it does not exceed the
size of the disk.
You may at any point change the disk type using the drop down Disk Scheme list in the bottom left corner.
You may also wish to include the boot sectors to the disk. Select it in the first item in Options Menu.
Once new files have been added you may build the disk using the Build Disk button (the one with the disk on it).
Please note Disk building can only take place if the Disk is not being currently used in Euphoric.
Menu Options
DSKBuilder is based on projects. A project must be open before any disk can be built. Each Project has its own configuration file which holds the current file list, Script settings, Disk Path and Name, Menu settings, etc.
From the File Menu you may Start a new Project, open an existing project or Close the currently open project.
From File Menu you may also set the name and path of the Disk to be built.
Options provide settings for the Disk
compilation.
Include Boot Sectors will include special
Boot code in Sectors 1 and 2 of the compiled disk. This provides a multi-boot
environment and Disk access routines with a rudimentary File table which will reside between FE00 and FFFA on bootup.
Scripts.. provides a means of executing
batch files before(Pre-Script) and after(Post-Script) the building of the disk.
This is intended to provide a complete source build, Disk Build and execute
Euphoric on a single Button Press (Build Disk Button).
Scripts will show a seperate form where you may set the Script locations.
Limit List to Disk Capacity will clip(remove) any files at the end of the list that take the compilation beyond the current Disk capacity.
Prohibit Duplicate Files will prevent you adding a file that already exists in the compilation. This is based on File Path and Name.
Convert Disk to MFM on Buildwill convert the generated Raw disk into a Euphoric compatable MFM disk.
Tools Menu currently provides Reports and
Manual.
Manual will display this page.
Launch Notepad
will launch Windows Notepad with a generated report.
File Index Report provides a table based primarily on Tape Files and will show for each file its load range into Oric Memory.
List Report generates a table that is a direct copy of the current list.
Wastage Report provides a list of all files and the unused space within each based on the 512 byte sector size.
Integrity Report provides a breakdown of the version of DSKBuilder and other statistics
List Options
The list comprises of a number of columns that each new
file will occupy.
The left most column is the file index which is the same number you address the file by using the provided
Boot Sector Disk routines.
Add files adds a new file or number of files to the compilation. Up to 80 files may exist in a single Disk compilation. This includes files on Side 2.
Remove File removes the currently selected file in the list.
Move Up moves the currently selected row up the list.
Move Down moves the currently selected row down the list.
Refresh rescans the file list for changes to the size and existence of each file and will adjust settings accordingly.
Build Disk will build the disk using the current list of files.
Disk Boot Sectors
Sectors 1 and 2 are reserved for Disk Boot Sectors.
The boot sector is used to boot up Oric-1,Atmos and
Telestrat.
The boot is compatable with Jasmin, Cumana 1, Cumana 2 and Microdisc.
The boot sector overwrites overlay
then loads the second sector into FD00 to FEFF.
This then relocates itself to
FE00-FFF9 before loading the first file in the compilation. Execution will
always take place at the files start address or if unspecified will load into
$0400 and execute from their.
At bootup all interrupts will be disabled and
System Vectors from FFFA to FFFF will need to be set.
FE00 to FEFF holds Disk routines (currently just Load but will eventually hold Save and Set Drive).
To load a file after bootup the program must load the
Accumulator with the Files load address and X register with File Index
then Call FE00. Interrupts will be disabled during the load(SEI) but will
not be enabled afterwards(CLI).
There is currently
no protection preventing a load into any page including FE00
and FF00. Care must be taken since the smallest block size is 512 bytes. Loading
directly into Pages below 4 is not recommended.
Overlay RAM (C000-FFFF) is always enabled. Switching to ROM or FDC EPROM may be done but no specialist routines have been written to facilitate this.
A number of Disk and System variables are provided between FFF0 and FFF9. These may be read by the user programs.
FFF0 - Number of Sides(Bit 0) and Tracks(Bits 1-7) on the
Disk
FFF1 - Version (Currently #00)
FFF2 - Number of Sector Per Track
(Plus one)
FFF4 - Machine Type (#20 Jasmin, #40 Atmos Microdisc, #C0
Telestrat)
FFF5 - First File Load Address (High)
FFF9 - Number of Files on
Disk(1-80)
In addition the FAT table may also be read. The FAT table comprises three separate 80 byte tables.
FF00-FF4F - Sector Number(1-9)
FF50-FF9F - Side(Bit 0)
and Track(Bits 1-7)
FFA0-FFEF - Size of File in Sectors
Using the Demo
The Demo provided with DSKBuilder is a simple slideshow, running through the number of HIRES screens that were compiled using DSKBuilder. To run the Demo boot Euphoric with SlideShow.dsk disk.
All files are provided to allow you to create your own slideshow. The first file must always be Loader.tap which loads each slide, displays the prompt and waits for a key. The source for this file is FirstLoad.s
The next and subsequent files added to the compilation will be treated as HIRES screens and loaded into C000 before being transferred to HIRES A000 (by Loader.tap). This is because the HIRES screen of 8000 bytes is not directly divisable by 512.
All other .tap files are HIRES screens.
To build this demo, create a new project then Add all the
tape files making sure Loader.tap is the first file in the list.
Now go to
Menu/Options and flag Include Boot Sectors
and Convert Disk to MFM on Build. Also
Set Disk Name and directory in Menu/Files.
Now you are
ready to build the disk by simply pressing the Build Disk
button. At the time of going to press it was still neccesary to confirm
conversion of the Raw disk to MFM by pressing Return.
You may then boot the disk in Euphoric.
History
Here is the list of all releases with a short description of things that changed:
Version 1.0.0.2
- Import Picture (BMP Only) added. When the app
recognises the file being added as BMP it will launch a second window
where
The user may set the conversion options(PictConv), preview the result
and Add the converted image to the compilation.
The Conversion, Size and
Position drop lists are currently ignored. If multiple images are being added
the user may opt to apply the current conversion settings to all subsequent
files (or cancel All).
- When adding a new file, entering a filename that
doesn't exist will now create a new file. Another form will open to permit the
user to enter a size and fill value for the new file.
- Modify Option added,
Progress bar removed, Build Button moved and resized. Modify only works with
converted Images and will launch the Import BMP window. Applying the changes
will change the conversion settings.
- File Lists Start Address column
changed to Attributes. Tape file rows still show Start Address but converted
image rows now show Conversion settings for BMP Images in this column.
-
Menu/Recent Projects now launches new form which lists all projects known (the
common file is held in osdk/bin folder and called dskb_projects.cfg). The user
may begin a new project, double click or select load project button once project selected.
Version 1.0.0.1
- Now saves menu flags in Project file
- Infinite loop (testing)
removed from Boot loading
- Format of raw disk was incorrect
- Executing
Batch file sometimes failed (now changing to batch directory before shelling to
it)
- Manual Written
- Demo Written
Version 1.0.0.0
- First released version
Credits
Credit must go to Fabrice Frances for the Fantasmagoric Disk boot sector.
Fabrice managed to squeeze Microdisc, Jasmin, Telestrat, Cumana-1 and
Cumana-2 boot into a single sector.
Thanks also to Mickael Pointier for his
ideas, help and support.