AminetAminet
Search:
85458 packages online
About
Recent
Browse
Search
Upload
Setup
Services

driver/media/l2boot.lha

Mirror:Random
Showing: m68k-amigaos iconppc-amigaos iconppc-morphos iconi386-aros iconi386-amithlon iconppc-warpup iconppc-powerup icongeneric iconother icon
No screenshot available
Short:net-boot with PCMCIA 3Com Etherlink III
Author:Francesco Talarico
Uploader:Francesco Talarico (fra tal pm me)
Type:driver/media
Version:43.23
Architecture:m68k-amigaos
Date:2026-08-03
Requires:A600/A1200, 3Com EtherLink III PCMCIA, LoadModule, ptable.library, Linux host
Download:driver/media/l2boot.lha - View contents
Readme:driver/media/l2boot.readme
Downloads:2

# L2BOOT

L2Boot allows an Amiga 600 or Amiga 1200 to mount and boot from an HDF
image or physical disk hosted by a Linux machine.

The remote storage appears to AmigaOS as:

l2scsi.device unit 0

Communication uses raw Ethernet frames. No TCP/IP stack or network
configuration is required on the Amiga.

Apart from the 3Com newtork card, no other dedicated hardware or custom
Kickstart ROM are required. The Amiga components are spawned at boot using
LoadModule.


# QUICK START

Amiga:

- Amiga 600 or Amiga 1200
- AmigaOS 3.x
- 3Com EtherLink III PCMCIA card
- LoadModule
- supplied ptable.library
- supplied l2scsi.device
- supplied l2remote.boot

Linux:

- any Linux computer (tested OK on VirtualBox)
- Ethernet connection to the Amiga
- root privileges
- GCC (apt-get build-essential)
- A Raspberry Pi is convenient but not required.


# BUILD THE LINUX SERVER

wget 
https://github.com/Telefonorosso/l2boot/raw/refs/heads/main/l2boot-pi-hdf-server-v50-data1024-native-rdb-write-blockdev-noboot-auto-peer.c

Compile:

gcc -O2 -Wall -Wextra \
    -o l2boot-hdf-server \
    l2boot-pi-hdf-server-v50-data1024-native-rdb-write-blockdev-noboot-auto-peer.c

Make it executable:

chmod +x l2boot-hdf-server


# START THE SERVER

For an existing RDB HDF:

./l2boot-hdf-server eth0 disk.hdf

Replace eth0 with the correct interface.


# LOAD THE AMIGA MODULES

- download http://aminet.net/package/util/boot/LoadModule

lha e loadmodule.lha

- move l2boot.lha into the LoadModule folder

lha e l2boot.lha

LoadModule ptable.library l2scsi.device l2remote.boot NOREBOOT

(now reboot with CTRL-AMIGA)

The system will scan for the server in the broadcast domain and eventually
boot from the remote disk image!


# FEATURES

- boot from remote Amiga RDB/ADF images or Linux block devices
- write support
- multiple partitions
- HDToolBox partitioning and resizing
- quick and full formatting
- optional read-only mode
- temporary non-booting mode
- creation of new blank disks
- automatic host discovery
- Linux operation on Raspberry Pi, desktop PCs and virtual machines


# READ-ONLY MODE

./l2boot-hdf-server eth0 disk.hdf --protect

Use this or make a backup of your valuable image beforehand!


# PREVENT AUTOMATIC BOOT

./l2boot-hdf-server eth0 disk.hdf --noboot

The disk remains visible and writable, but its partitions are temporarily
presented with BootPri -10.

The source HDF or physical disk is not modified.


# CREATE A BLANK HDF

Fully allocated 256 MiB image:

dd if=/dev/zero of=blank.hdf bs=1M count=256 status=progress

Sparse 1 GiB image:

truncate -s 1G blank.hdf


# PREPARE A BLANK HDF

Start the server once with:

./l2boot-hdf-server eth0 blank.hdf --allow-raw-write --noboot

Then:

- Boot the Amiga and do LoadModule
- Start HDToolBox with l2scsi.device unit 0.
- "Define" the drive.
- Create and save the partitions (set a high bootpri!)
- Reboot the Amiga
- Format the partitions
- Make some use of them
- Restart the server without any option when ready:
   
./l2boot-hdf-server eth0 blank.hdf


# LINUX BLOCK DEVICES E.G. MICRO-SD CARDS

A physical disk, USB device or memory card may be served directly:

./l2boot-hdf-server eth0 /dev/sdb

Check the device name first:

fdisk -l

Before exposing a block device:

- verify the device name
- confirm it is not the Linux system disk
- BE CAREFUL

Do an initial read-only test!

./l2boot-hdf-server eth0 /dev/sdb --protect


# LINUX GUEST

The server has been tested under Debian running in VirtualBox on Windows.

The guest must be able to:

- receive Ethernet broadcasts;
- transmit custom Ethernet frames;
- open Linux AF_PACKET raw sockets;
- pass EtherType 0x88B8;
- access the selected HDF or block device.

This does not require any special configuration on VirtualBox
apart from enabling "BRIDGED NETWORKING".


# COMPATIBILITY

Verified:

- Amiga 600 (Pistorm)
- Amiga 1200 (+ 68030)
- AmigaOS 3.x
- Kickstart 40.68 with LoadModule
- 3Com EtherLink III PCMCIA 3C589C for 10BASE-T and Coax
- 3Com EtherLink III PCMCIA 3C589D-TP for 10BASE-T
- RDB images
- ADF images
- multiple partitions
- bootable partitions
- Linux block devices
- HDToolBox
- formatting


# LIMITATIONS

- ADF images with custom bootblock, copy protection, etc. will be UNREADABLE
- The network card is OWNED by l2boot 
- LoadModule is incompatible with "CPU FASTROM" 
  it hangs forever on a purple screen)
- hot removal (disk swapping) is unsupported.


# DEPENDENCIES

LoadModule is available from Aminet:

https://aminet.net/package/util/boot/LoadModule

ptable.library is a component of the CFD project:

https://aminet.net/package/driver/media/cfd


# CREDITS

L2Boot:
Francesco Talarico

LoadModule:
Thomas Richter and Etienne Vogt

ptable.library:
Jaroslav Pulchart

Original compactflash.device / CFD project:
Torsten Jager



Contents of driver/media/l2boot.lha
 PERMSSN    UID  GID    PACKED    SIZE  RATIO METHOD CRC     STAMP          NAME
---------- ----------- ------- ------- ------ ---------- ------------ -------------
[Amiga]                    324     452  71.7% -lh5- 5f40 Jul 30 23:17 l2remote.boot
[Amiga]                   7372   11292  65.3% -lh5- 0828 Jul 30 23:35 l2scsi.device
[Amiga]                   2452    3584  68.4% -lh5- c9db Jul 21 01:56 ptable.library
---------- ----------- ------- ------- ------ ---------- ------------ -------------
 Total         3 files   10148   15328  66.2%            Aug  3 00:39
Page generated in 0.01 seconds
Aminet © 1992-2024 Urban Müller and the Aminet team. Aminet contact address: <aminetaminet net>