This repository has been archived by the owner on Apr 30, 2024. It is now read-only.
forked from spectrumero/spectranet
-
Notifications
You must be signed in to change notification settings - Fork 12
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge gnubinutils branch r372:398 into trunk
- Loading branch information
1 parent
4cfad75
commit f1343c5
Showing
270 changed files
with
5,447 additions
and
5,176 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,27 @@ | ||
SUBDIRS = syslib rom modules installer utils | ||
|
||
.PHONY: subdirs $(SUBDIRS) | ||
|
||
.PHONY: clean | ||
|
||
.PHONY: z88dk | ||
|
||
subdirs: $(SUBDIRS) | ||
|
||
z88dk: | ||
$(MAKE) -C z88dk | ||
|
||
$(SUBDIRS): | ||
$(MAKE) -C $@ | ||
|
||
clean: | ||
for dir in $(SUBDIRS); do \ | ||
$(MAKE) -C $$dir clean; \ | ||
done | ||
|
||
rom: syslib | ||
|
||
modules: syslib | ||
|
||
installer: syslib rom modules utils | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,48 @@ | ||
BUILDING THE SPECTRANET ROMs/MODULES | ||
------------------------------------ | ||
|
||
Pre-requisites: | ||
A Unix build environment (Linux, BSD, Mac OSX, Windows with Cygwin, Windows | ||
with MinGW etc) | ||
GNU binutils for Z80 (assembler, linker, ar, ranlib etc) | ||
Perl for some build scripts (my intention is to remove this requirement) | ||
|
||
To build: | ||
In the top level directory, type "make" | ||
|
||
To install: | ||
A firmware programmer is generated in the directory 'installer'. This | ||
must be run on a ZX Spectrum with a Spectranet. Two versions exist - a | ||
version that programs just the base ROM set (first four pages), and | ||
a version that programs the base ROM set and standard modules (basext, | ||
streams, msgrom, config and snapman). | ||
|
||
Run 'bin2tzx' to convert the install.bin / base.bin files to TZX files | ||
to load via the Spectrum's tape port. Alternatively, to update a Spectranet | ||
that is already programmed, load via ethernet using the 'ethup' utility: | ||
|
||
On the Spectrum: | ||
CLEAR 26999 | ||
(press NMI button or short the NMI pins on the bare board) | ||
(Select 'Load arbitrary data...') | ||
|
||
On the build machine: | ||
ethup <IP-of-spectrum> install.bin 27000 | ||
|
||
Then on the Spectrum, exit the NMI menu and: | ||
RANDOMIZE USR 27000 | ||
|
||
Or if you have the computer with the build mounted via TNFS or some other | ||
filesystem, on the Spectrum: | ||
|
||
CLEAR 26999 | ||
%aload "install.bin" CODE 27000 | ||
RANDOMIZE USR 27000 | ||
|
||
DEVELOPING | ||
---------- | ||
If you intend to work on the ROM sources or modules, it's advisable to | ||
also generate the dependencies, by running 'buildtoos/makedeps'. This | ||
will ensure if you alter an include file, everything that depends on it | ||
gets rebuilt the next time 'make' is run. | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,24 @@ | ||
#!/usr/bin/perl | ||
my $mapfile=shift; | ||
my $outputfile=shift; | ||
if(!$outputfile) | ||
{ | ||
print("Usage: map2sym <mapfile> <outputfile>\n"); | ||
exit -1; | ||
} | ||
|
||
open FHND, "< $mapfile" or die("Unable to open $mapfile: $!"); | ||
open SYMHND, "> $outputfile" or die("Unable to write to $outputfile: $!"); | ||
while(my $line=<FHND>) | ||
{ | ||
chomp $line; | ||
if($line =~ /^\s{1,}0x[a-zA-Z0-9]{1,}\s{1,}(F|J)_/) | ||
{ | ||
$line=~s/^\s{1,}//g; | ||
my ($addr, $symbol)=split(/\s{1,}/, $line, 2); | ||
print SYMHND "$symbol equ $addr\n"; | ||
} | ||
} | ||
close(FHND); | ||
close(SYMHND); | ||
|
Oops, something went wrong.