mirror of
https://github.com/akuker/RASCSI.git
synced 2024-12-22 15:30:09 +00:00
Updated makefile to auto-generate man pages text files
This commit is contained in:
parent
79ac158eb0
commit
35d2b83811
@ -3,8 +3,12 @@
|
||||
CC = gcc
|
||||
CXX = g++
|
||||
|
||||
CFLAGS = -DDISK_LOG -O0 -g -Wall
|
||||
CXXFLAGS = -DDISK_LOG -O0 -g -Wall
|
||||
# Debug CFLAGS
|
||||
#CFLAGS = -DDISK_LOG -O0 -g -Wall
|
||||
#CFLAGS = -DDISK_LOG -O0 -g -Wall
|
||||
# Release CFLAGS
|
||||
CXXFLAGS = -O3 -Wall
|
||||
CXXFLAGS = -O3 -Wall
|
||||
|
||||
|
||||
|
||||
@ -22,10 +26,14 @@ RASDUMP = rasdump
|
||||
SASIDUMP = sasidump
|
||||
SCSIMON = scsimon
|
||||
|
||||
USR_LOCAL_BIN = /usr/local/bin
|
||||
MAN_PAGE_DIR = /usr/share/man/man1
|
||||
DOC_DIR = ../../doc
|
||||
|
||||
#BIN_ALL = $(RASCSI) $(RASCTL) $(RASDUMP) $(SASIDUMP) $(SCSIMON)
|
||||
# Temporarily remove the RASDUMP and RASDUMP tools, since they're not needed
|
||||
# for my specific use case. If you need them - add them back in!
|
||||
BIN_ALL = $(RASCSI) $(RASCTL) $(SCSIMON)
|
||||
BIN_ALL = $(RASCSI) $(RASCTL)
|
||||
|
||||
|
||||
SRC_RASCSI = \
|
||||
@ -71,13 +79,16 @@ OBJ_RASCTL := $(SRC_RASCTL:%.cpp=%.o)
|
||||
OBJ_RASDUMP := $(SRC_RASDUMP:%.cpp=%.o)
|
||||
OBJ_SASIDUMP := $(SRC_SASIDUMP:%.cpp=%.o)
|
||||
OBJ_SCSIMON := $(SRC_SCSIMON:%.cpp=%.o)
|
||||
OBJ_ALL := $(OBJ_RASCSI) $(OBJ_RASCTL) $(OBJ_RASDUMP) $(OBJ_SASIDUMP) $(OBJ_SCSIMON)
|
||||
#OBJ_ALL := $(OBJ_RASCSI) $(OBJ_RASCTL) $(OBJ_RASDUMP) $(OBJ_SASIDUMP) $(OBJ_SCSIMON)
|
||||
OBJ_ALL := $(OBJ_RASCSI) $(OBJ_RASCTL) $(OBJ_RASDUMP) $(OBJ_SASIDUMP)
|
||||
|
||||
%.o: %.cpp
|
||||
$(CXX) $(CXXFLAGS) -c $< -o $@
|
||||
|
||||
ALL: $(BIN_ALL)
|
||||
all: $(BIN_ALL)
|
||||
docs: $(DOC_DIR)/rascsi_man_page.txt $(DOC_DIR)/rasctl_man_page.txt
|
||||
|
||||
ALL: $(BIN_ALL) docs
|
||||
all: $(BIN_ALL) docs
|
||||
|
||||
$(RASCSI): $(OBJ_RASCSI)
|
||||
$(CXX) -o $@ $(OBJ_RASCSI) -lpthread
|
||||
@ -98,7 +109,17 @@ clean:
|
||||
rm -f $(OBJ_ALL) $(BIN_ALL)
|
||||
|
||||
run:
|
||||
sudo ./$(RASCSI) -ID1 /home/pi/HARDDISK.HDA -ID6 /home/pi/marathon.iso
|
||||
sudo ./$(RASCSI) -ID1 /home/pi/HARDDISK2.hda -ID6 /home/pi/marathon.iso
|
||||
|
||||
install: $(MAN_PAGE_DIR)/rascsi.1 $(MAN_PAGE_DIR)/rasctl.1
|
||||
sudo cp $(RASCTL) $(USR_LOCAL_BIN)
|
||||
sudo cp $(RASCSI) $(USR_LOCAL_BIN)
|
||||
|
||||
$(MAN_PAGE_DIR)/%.1 : $(DOC_DIR)/%.1
|
||||
sudo cp $< $@
|
||||
|
||||
$(DOC_DIR)/%_man_page.txt : $(DOC_DIR)/%.1
|
||||
man -l $< | col -bx > $@
|
||||
|
||||
.PHONY: Debug
|
||||
Debug: scsimon
|
||||
|
@ -1,62 +0,0 @@
|
||||
.TH rascsi 1
|
||||
.SH NAME
|
||||
rascsi \- Emulates SCSI devices using the Raspberry Pi GPIO pins
|
||||
.SH SYNOPSIS
|
||||
.B rascsi
|
||||
[\fB\-IDn\fR \fIfile\fR]
|
||||
[\fB\-HDn\fR \fIfile\fR]...
|
||||
.SH DESCRIPTION
|
||||
.B rascsi
|
||||
Emulates SCSI devices using the Raspberry Pi GPIO pins.
|
||||
.PP
|
||||
In the arguments to RaSCSI, one or more SCSI (-IDn) or SASI (-HDn) devices can be specified.
|
||||
The number (n) after the ID or HD idnetifier specifies the ID number for that device.
|
||||
For SCSI: The ID is limited from 0-7. However, typically SCSI ID 7 is reserved for the "initiator" (the host computer).Note that SASI is considered rare and only used on very early Sharp X68000 computers.
|
||||
.PP
|
||||
RaSCSI will determin the type of device based upon the file extension of the FILE argument.
|
||||
hdf: SASI Hard Disk image (XM6 SASI HD image - typically only used with X68000)
|
||||
hds: SCSI Hard Disk image (XM6 SCSI HD image - typically only used with X68000)
|
||||
hdn: SCSI Hard Disk image (NEC GENUINE)
|
||||
hdi: SCSI Hard Disk image (Anex86 HD image)
|
||||
nhd: SCSI Hard Disk image (T98Next HD image)
|
||||
hda: SCSI Hard Disk image (APPLE GENUINE - typically used with Mac SCSI emulation)
|
||||
mos: SCSI Magneto-optical image (XM6 SCSI MO image - typically only used with X68000)
|
||||
iso: SCSI CD-ROM image (ISO 9660 image)
|
||||
|
||||
For example, if you want to specify an Apple-compatible HD image on ID 0, you can use the following command:
|
||||
sudo rascsi -ID0 /path/to/drive/hdimage.hda
|
||||
|
||||
Once RaSCSI starts, it will open a socket (port 6868) to allow external management commands.
|
||||
If another process is using port 6868, RaSCSI will terminate, since it is likely another instance of RaSCSI.
|
||||
Once RaSCSI has initialized, the rasctl utility can be used to send commands.
|
||||
|
||||
To quit RaSCSI, press Control + C. If it is running in the background, you can kill it using an INT signal.
|
||||
|
||||
.SH OPTIONS
|
||||
.TP
|
||||
.BR\-\-ID\fIn " " \fIFILE
|
||||
n is the SCSI ID number (0-7)\n
|
||||
.IP
|
||||
FILE is the name of the image file to attach to that ID.
|
||||
.TP
|
||||
.BR\-\-HD\fIn " " \fIFILE
|
||||
n is the SASI ID number (0-15)\n
|
||||
.IP
|
||||
FILE is the name of the image file to attach to that ID.
|
||||
.IP
|
||||
Note: SASI usage is rare, and is typically limited to early Sharp X68000 systems.
|
||||
|
||||
.SH EXAMPLES
|
||||
Launch RaSCSI with no emulated drives attached:
|
||||
rascsi
|
||||
|
||||
Launch RaSCSI with an Apple hard drive image as ID0 and a CD-ROM as ID 2
|
||||
rascsi -ID0 /path/to/harddrive.hda -ID2 /path/to/cdimage.iso
|
||||
|
||||
To create an empty, 100MB HD image, use the following command:
|
||||
dd if=/dev/zero of=/path/to/newimage.hda bs=512 count=204800
|
||||
|
||||
.SH SEE ALSO
|
||||
rasctl(1), scsidump(1)
|
||||
|
||||
Full documentation is available at: <https://www.github.com/akuker/RASCSI/wiki/>
|
@ -1,71 +0,0 @@
|
||||
.TH rascsi 1
|
||||
.SH NAME
|
||||
rasctl \- Sends management commands to the rascsi process
|
||||
.SH SYNOPSIS
|
||||
.B rasctl
|
||||
\fB\-l\fR |
|
||||
\fB\-i\fR \fIID\fR
|
||||
[\fB\-u\fR \fIUNIT\fR]
|
||||
[\fB\-c\fR \fICMD\fR]
|
||||
[\fB\-t\fR \fITYPE\fR]
|
||||
[\fB\-f\fR \fIFILE\fR]
|
||||
.SH DESCRIPTION
|
||||
.B rasctl
|
||||
Sends commands to the rascsi process to make configuration adjustments at runtime or to check the status of the devices.
|
||||
|
||||
Either the -i or -l option should be specified at one time. Not both.
|
||||
|
||||
You do NOT need root privileges to use rasctl.
|
||||
|
||||
Note: The command and type arguments are case insensitive. Only the first letter of the command/type are evaluated by the tool.
|
||||
|
||||
.SH OPTIONS
|
||||
.TP
|
||||
.BR\-\-l\fI
|
||||
List all of the devices that are currently being emulated by RaSCSI, as well as their current status. \n
|
||||
.TP
|
||||
.BR\-\-i\fI " " \fIID
|
||||
ID is the SCSI ID that you want to control. (0-7)\n
|
||||
.TP
|
||||
.BR\-\-u\fI " " \fIUNIT
|
||||
Unit number (0 or 1). This will default to 0. This option is only used when there are multiple SCSI devices on a shared SCSI controller. (This is not common)\n
|
||||
.TP
|
||||
.BR\-\-c\fI " " \fICMD
|
||||
Command is the operation being requested. options are:
|
||||
attach: attach disk
|
||||
detach: detach disk
|
||||
insert: insert media (Magneto-Optical and CD only)
|
||||
eject: eject media (Magneto-Optical and CD only)
|
||||
protect: Write protect the media (Magneto-Optical only)
|
||||
.IP
|
||||
When the command is omited, rasctl will default to the 'attach' command
|
||||
.TP
|
||||
.BR\-\-t\fI " " \fITYPE
|
||||
Specifies the type of disk. If this disagrees with the file extension of the specified image, the TYPE argument is ignored. Available drive types are:
|
||||
hd: Hard disk (SCSI or SASI)
|
||||
mo: Magneto-Optical disk)
|
||||
cd: CD-ROM
|
||||
bridge: Bridge device (This is only applicable to the Sharp X68000)
|
||||
.TP
|
||||
.BR\-\-f\fI " " \fIFILE
|
||||
Path to the disk image file. See the rascsi(1) man page for allowable file types.
|
||||
|
||||
.SH EXAMPLES
|
||||
Show a listing of all of the SCSI devices and their current status
|
||||
rasctl -l
|
||||
|
||||
|
||||
Example output:
|
||||
+----+----+------+-------------------------------------
|
||||
| ID | UN | TYPE | DEVICE STATUS
|
||||
+----+----+------+-------------------------------------
|
||||
| 0 | 1 | SCHD | /home/pi/harddisk.hda
|
||||
+----+----+------+-------------------------------------
|
||||
|
||||
Request the RaSCSI process to attach a disk (assumed) to SCSI ID 0 with the contents of the file system image "HDIIMAGE0.HDS".
|
||||
rasctl -i 0 -f HDIIMAGE0.HDS
|
||||
|
||||
.SH SEE ALSO
|
||||
rascsi(1)
|
||||
|
||||
Full documentation is available at: <https://www.github.com/akuker/RASCSI/wiki/>
|
Loading…
Reference in New Issue
Block a user