mirror of
https://github.com/bobbimanners/emailler.git
synced 2025-01-03 19:30:21 +00:00
git-svn-id: http://svn.code.sf.net/p/netboot65/code@125 93682198-c243-4bdb-bd91-e943c89aac3b
This commit is contained in:
parent
028a1f135b
commit
1dc0f9a5cd
@ -25,11 +25,12 @@ end
|
||||
puts "#{@progname} <image> <option> <value> [<option> <value> ..]"
|
||||
puts "multiple options may be set"
|
||||
show_options
|
||||
true
|
||||
end
|
||||
|
||||
number_of_options=ARGV.length
|
||||
usage unless number_of_options>=3
|
||||
usage unless (number_of_options%2) ==1 #must be an odd number of options
|
||||
usage && exit unless number_of_options>=3
|
||||
usage && exit unless (number_of_options%2) ==1 #must be an odd number of options
|
||||
filename=ARGV[0]
|
||||
if !(FileTest.file?(filename)) then
|
||||
puts "file '#{filename}' not found"
|
||||
|
21
dist/make_dist.rb
vendored
21
dist/make_dist.rb
vendored
@ -8,24 +8,31 @@ require 'ftools'
|
||||
|
||||
WORKING_DIR=File.expand_path(File.dirname(__FILE__)+"/netboot65")
|
||||
SRC_DIR=File.expand_path(File.dirname(__FILE__)+"/../")
|
||||
["","nb65","lib","bin","boot","doc","inc","examples"].each do |dir_suffix|
|
||||
["","a2","c64","lib","bin","boot","doc","inc","examples"].each do |dir_suffix|
|
||||
dir_path="#{WORKING_DIR}/#{dir_suffix}"
|
||||
Dir.mkdir(dir_path) unless File.exist?(dir_path)
|
||||
end
|
||||
|
||||
[
|
||||
["client/nb65/utherboot.dsk","nb65/"],
|
||||
["client/nb65/nb65_rrnet.bin","nb65/"],
|
||||
["client/nb65/nb65_c64_ram.prg","nb65/"],
|
||||
["client/nb65/nb65_std_cart.bin","nb65/"],
|
||||
["client/nb65/utherboot.dsk","a2/"],
|
||||
["client/nb65/set_ip_config.rb","bin/"],
|
||||
#["client/nb65/nb65_rrnet.bin","c64/"],
|
||||
["client/nb65/nb65_c64_ram.prg","c64/"],
|
||||
["client/nb65/nb65_std_cart.bin","c64/"],
|
||||
["client/nb65/d64_upload.prg","boot/"],
|
||||
["server/lib/tftp_server.rb","lib"],
|
||||
["server/bin/tftp_only_server.rb","bin/tftp_server.rb"],
|
||||
["server/bin/import_ags_games.rb","bin"],
|
||||
["server/boot/BOOTA2.PG2","boot"],
|
||||
["doc/README.*.txt","doc"],
|
||||
["doc/nb65_technical_reference.doc","doc"],
|
||||
["doc/README.Apple2.html","a2"],
|
||||
["doc/README.C64.html","c64"],
|
||||
["doc/nb65_api_technical_reference.doc","doc"],
|
||||
["client/inc/common.i","inc"],
|
||||
["client/inc/nb65_constants.i","inc"],
|
||||
["client/examples/dasm_example.asm","examples/"],
|
||||
|
||||
#["client/nb65/d64_upload.s","examples/"],
|
||||
#["client/nb65/nb65_skeleton.s","examples/"],
|
||||
].each do |args|
|
||||
dest="#{WORKING_DIR}/#{args[1]}"
|
||||
Dir["#{SRC_DIR}/#{args[0]}"].each do |src|
|
||||
|
70
doc/README.Apple2.html
Normal file
70
doc/README.Apple2.html
Normal file
@ -0,0 +1,70 @@
|
||||
<h1>NETBOOT65 FOR THE APPLE ][</h1>
|
||||
|
||||
<h2>TO USE</h2>
|
||||
<ol>
|
||||
<li>unzip the archive somewhere on your local hard drive
|
||||
<li>start the bin/tftp_server.rb script (e.g. by double-clicking on it)
|
||||
<li>boot up the client/utherboot.dsk (either in AppleWin, or using ADTPro to transfer to a real Apple 2 disk)
|
||||
</ol>
|
||||
When Utherboot.dsk boots, it runs a program called "UTHERBOOT.PG2" that does the following
|
||||
<ul>
|
||||
<li>checks for an uthernet in slot 3
|
||||
<li>broadcasts a DHCP request to get an IP address allocated
|
||||
<li>broadcasts a TFTP request for a directory listing for anything matching "*.PG2"
|
||||
<li>displays a menu containing whatever files the TFTP server lists as available.
|
||||
<li>Once a file is selected, it is downloaded via TFTP, and executed
|
||||
</ul>
|
||||
<h2>ADDING MORE FILES</h2>
|
||||
|
||||
Only single-load files can be used (this may change in a future release). The files need to be in "PG2" format, which is essentially a DOS 3.3 Binary file.
|
||||
The first 2 bytes of the file must be the load address (little-endian, i.e. low/high), and then the next 2 bytes must be the file length (excluding the 4 byte
|
||||
header). The files also need to have a file extension of ".PG2" (in upper case, if your operating system of choice is case sensitive).
|
||||
<p>
|
||||
If you use CiderPress (http://ciderpress.sourceforge.net/) to extract files from a DSK image, they will not be in the correct format, however there is
|
||||
a script that will convert such files (including, for example, the games supplied with the Apple 2 Game Server - http://a2gameserver.berlios.de/).
|
||||
If you run bin/import_ags_games.rb and specify the path to a folder containing files extracted with CiderPress, e.g. the Apple 2 Game Server "games"
|
||||
directory, a copy of all the games will be placed in the boot/ folder (converted to the appropriate format) - NB due to a limitation in the menu
|
||||
selection code, only the first 128 PG2 files in the boot/ folder can be selected.
|
||||
<p>
|
||||
Alternatively, you can use dsktool.rb (http://dsktool.rubyforge.org/) to extract files - it will retain the appropriate file header during the extraction.
|
||||
For example, to extract the "DIG DUG" game from the online copy at http://mirrors.apple2.org.za/ftp.apple.asimov.net/images/games/action/digdug.dsk.gz, do
|
||||
the following:
|
||||
<ol>
|
||||
<li>cd to the netboot65/boot folder
|
||||
<li>execute 'dsktool http://mirrors.apple2.org.za/ftp.apple.asimov.net/images/games/action/digdug.dsk.gz -e "DIG DUG" -o DIGDUG.PG2'
|
||||
</ol>
|
||||
|
||||
<h2>REQUIREMENTS</h2>
|
||||
<ul>
|
||||
<li>Uthernet in slot 3 (to use under AppleWin, you will need winpcap installed)
|
||||
<li>a DHCP server on your network
|
||||
<li>a working ruby installation
|
||||
</ul>
|
||||
<h2>LIMITATIONS</h2>
|
||||
These may be fixed in a future release.
|
||||
<ul>
|
||||
<li>Uthernet must be in slot 3
|
||||
<li>Only single-load programs supported
|
||||
<li>Only BRUNable files supported (i.e. not Applesoft or Integer BASIC)
|
||||
<li>No more than 128 programs will be displayed in the menu
|
||||
<li>no HGR font, starfield or plinkity plonkety "music"
|
||||
</ul>
|
||||
<h2>CREDITS</h2>
|
||||
<li>IP65 - lightweight IP+UDP stack written in CA65 assembler, by Per Olofsson - http://www.paradroid.net/ip65
|
||||
<li>TFTP extension to IP65 - Jonno Downes - jonno@jamtronix.com
|
||||
|
||||
<h2>INSPIRATION</h2>
|
||||
<li>Apple 2 Game Server - http://a2gameserver.berlios.de/
|
||||
<li>AppleWin - http://applewin.berlios.de/
|
||||
<li>comp.sys.apple2 regulars - http://groups.google.com.au/group/comp.sys.apple2/
|
||||
|
||||
<h2>LICENSE</h2>
|
||||
NETBOOT65 is licensed under the same terms as IP65, the Mozilla Public License Version 1.1.
|
||||
For details, please visit http://www.mozilla.org/MPL/
|
||||
|
||||
|
||||
<h2>SOURCE CODE</h2>
|
||||
Available at http://sourceforge.net/svn/?group_id=250168
|
||||
|
||||
<h2>AUTHOR</h2>
|
||||
Jonno Downes - jonno@jamtronix.com
|
@ -1,71 +0,0 @@
|
||||
NETBOOT65
|
||||
|
||||
TO USE:
|
||||
1) unzip the archive somewhere on your local hard drive
|
||||
2) start the bin/tftp_server.rb script (e.g. by double-clicking on it)
|
||||
3) boot up the client/utherboot.dsk (either in AppleWin, or using ADTPro to transfer to a real Apple 2 disk)
|
||||
|
||||
When Utherboot.dsk boots, it runs a program called "UTHERBOOT.PG2" that does the following
|
||||
|
||||
- checks for an uthernet in slot 3
|
||||
- broadcasts a DHCP request to get an IP address allocated
|
||||
- broadcasts a TFTP request for a directory listing for anything matching "*.PG2"
|
||||
- displays a menu containing whatever files the TFTP server lists as available.
|
||||
- Once a file is selected, it is downloaded via TFTP, and executed
|
||||
|
||||
ADDING MORE FILES
|
||||
|
||||
Only single-load files can be used (this may change in a future release). The files need to be in "PG2" format, which is essentially a DOS 3.3 Binary file.
|
||||
The first 2 bytes of the file must be the load address (little-endian, i.e. low/high), and then the next 2 bytes must be the file length (excluding the 4 byte
|
||||
header). The files also need to have a file extension of ".PG2" (in upper case, if your operating system of choice is case sensitive).
|
||||
|
||||
If you use CiderPress (http://ciderpress.sourceforge.net/) to extract files from a DSK image, they will not be in the correct format, however there is
|
||||
a script that will convert such files (including, for example, the games supplied with the Apple 2 Game Server - http://a2gameserver.berlios.de/).
|
||||
If you run bin/import_ags_games.rb and specify the path to a folder containing files extracted with CiderPress, e.g. the Apple 2 Game Server "games"
|
||||
directory, a copy of all the games will be placed in the boot/ folder (converted to the appropriate format) - NB due to a limitation in the menu
|
||||
selection code, only the first 128 PG2 files in the boot/ folder can be selected.
|
||||
|
||||
Alternatively, you can use dsktool.rb (http://dsktool.rubyforge.org/) to extract files - it will retain the appropriate file header during the extraction.
|
||||
For example, to extract the "DIG DUG" game from the online copy at http://mirrors.apple2.org.za/ftp.apple.asimov.net/images/games/action/digdug.dsk.gz, do
|
||||
the following:
|
||||
|
||||
1) cd to the netboot65/boot folder
|
||||
2) execute 'dsktool http://mirrors.apple2.org.za/ftp.apple.asimov.net/images/games/action/digdug.dsk.gz -e "DIG DUG" -o DIGDUG.PG2'
|
||||
|
||||
|
||||
REQUIREMENTS:
|
||||
1) Uthernet in slot 3 (to use under AppleWin, you will need winpcap installed)
|
||||
2) a DHCP server on your network
|
||||
3) a working ruby installation
|
||||
|
||||
LIMITATIONS:
|
||||
These may be fixed in a future release.
|
||||
- Uthernet must be in slot 3
|
||||
- Only single-load programs supported
|
||||
- Only BRUNable files supported (i.e. not Applesoft or Integer BASIC)
|
||||
- No more than 128 programs will be displayed in the menu
|
||||
- no HGR font, starfield or plinkity plonkety "music"
|
||||
- No C64 support
|
||||
|
||||
CREDITS:
|
||||
IP65 - lightweight IP+UDP stack written in CA65 assembler, by Per Olofsson - http://www.paradroid.net/ip65
|
||||
TFTP extension to IP65 - Jonno Downes - jonno@jamtronix.com
|
||||
|
||||
INSPIRATION:
|
||||
Apple 2 Game Server - http://a2gameserver.berlios.de/
|
||||
AppleWin - http://applewin.berlios.de/
|
||||
comp.sys.apple2 regulars - http://groups.google.com.au/group/comp.sys.apple2/
|
||||
|
||||
LICENSE:
|
||||
NETBOOT65 is licensed under the same terms as IP65, the Mozilla Public License Version 1.1.
|
||||
For details, please visit http://www.mozilla.org/MPL/
|
||||
|
||||
|
||||
SOURCE CODE:
|
||||
Available at http://sourceforge.net/svn/?group_id=250168
|
||||
|
||||
HISTORY:
|
||||
First alpha release - 2009-01-26 (Australia Day long weekend).
|
||||
|
||||
AUTHOR:
|
||||
Jonno Downes - jonno@jamtronix.com
|
66
doc/README.C64.html
Normal file
66
doc/README.C64.html
Normal file
@ -0,0 +1,66 @@
|
||||
<h1>NETBOOT65 FOR THE C64</h1>
|
||||
|
||||
<h2>STARTING THE SERVER</h2>
|
||||
<ol>
|
||||
<li> unzip the archive somewhere on your local hard drive</li>
|
||||
<li>start the bin/tftp_server.rb script (e.g. by double-clicking on it)</li>
|
||||
</ol>
|
||||
|
||||
<h2>TO USE WITH VICE</h2>
|
||||
Run VICE with the nb65_std_cart.bin cartridge image attached (e.g. "x64.exe -cart8 nb65_std_cart.bin")
|
||||
|
||||
<h2>TO USE WITH A REAL C64</h2>
|
||||
<h3>Option 1 - Hardcore</h3>
|
||||
burn the nb65_std_cart.bin cartridge to an EPROM and insert in an 8KB cartridge (which should be set up to have EXROM=0, GAME=1)
|
||||
|
||||
<h3>Option 2 - Just dabbling</h3>
|
||||
You can just run the nb65_c64_ram.prg program (which is essentially the cartridge image plus a loader prg to insert the image into the right place in RAM).
|
||||
|
||||
|
||||
<h2>USING THE CARTRIDGE</h2>
|
||||
|
||||
When the cartridge starts, it will attempt to configure the IP stack via DHCP. If the DHCP config fails (either by timing out, or the user press RUN/STOP)
|
||||
then the IP stack will fall back to using the IP configuration built into the cartridge. See the section "IP CONFIGURATION" for info on how to modify the
|
||||
cartridge defaults prior to burning an image.
|
||||
<p>
|
||||
Once the IP stack is initialised, the "main menu" screen will be displayed. From the main menu, the following options are available:
|
||||
<ul>
|
||||
<li>F1 : TFTP BOOT. THis will query a TFTP server for a list of PRG files, and allow the selection of a file to be downloaded and executed.</li>
|
||||
<li>F3 : BASIC. This will exit to BASIC (with IP stack still configured, so NB65 aware apps can be loaded from disk and run)</li>
|
||||
<li>F5 : UTILITY. This brings up a 'utility' menu - as of v0.5 of the cartridge, the only utility option is to display the ARP cache</li>
|
||||
<li>F7 : CONFIG. This brings up a menu where the IP configuration can be modified. Changes made here will be persistent until the next reboot.</li>
|
||||
</ul>
|
||||
<h2>IP CONFIGURATION</h2>
|
||||
There is a script in the "bin" folder called "set_ip_config.rb" that can be used to modify the MAC address and IP config details in the cart image before
|
||||
it is burned. For example, to set the MAC address and DNS servers, use this command:
|
||||
<pre>set_ip_config.rb nb65_std_cart.bin mac ab:cd:ef:12:34:56 dns 10.5.1.1</pre>
|
||||
run "set_ip_config.rb" with no parameters to see all the options for what can be configured.
|
||||
|
||||
|
||||
<h2>ADDING MORE FILES</h2>
|
||||
|
||||
Only single-load files can be used (this may change in a future release). The files need to be in "PRG" format, i.e.the first 2 bytes of the file must be
|
||||
the load address (little-endian, i.e. low/high). The files also need to have a file extension of ".PRG" (in upper case, if your operating system of choice
|
||||
is case sensitive).
|
||||
<p>
|
||||
Files need to be placed in the 'boot/' folder.
|
||||
<p>
|
||||
Due to a limitation in the menu selection code, only the first 128 PRG files in the boot/ folder can be selected.
|
||||
|
||||
|
||||
<h2>REQUIREMENTS</h2>
|
||||
<ol>
|
||||
<li>RR-NET or compatible adaptor (to use under VICE, you will need pcap or winpcap installed)</li>
|
||||
<li>(RECOMMENDED) a DHCP server on your network</li>
|
||||
<li>a working ruby installation</li>
|
||||
</ol>
|
||||
<h2>LICENSE</h2>
|
||||
NETBOOT65 is licensed under the same terms as IP65, the Mozilla Public License Version 1.1.
|
||||
For details, please visit http://www.mozilla.org/MPL/
|
||||
|
||||
|
||||
<h2>SOURCE CODE</h2>
|
||||
Available at http://sourceforge.net/svn/?group_id=250168
|
||||
|
||||
<h2>AUTHOR</h2>
|
||||
Jonno Downes - jonno@jamtronix.com
|
@ -1,30 +0,0 @@
|
||||
NETBOOT65
|
||||
|
||||
|
||||
TO USE WITH VICE:
|
||||
1) unzip the archive somewhere on your local hard drive
|
||||
2) start the bin/tftp_server.rb script (e.g. by double-clicking on it)
|
||||
3) run VICE with the rrnetboot.bin cartridge attached (e.g. "x64.exe -cartrr clients\rrnetboot.bin")
|
||||
|
||||
When rrnetboot.bin boots, it does the following
|
||||
|
||||
- broadcasts a DHCP request to get an IP address allocated
|
||||
- broadcasts a TFTP request for a directory listing for anything matching "*.PRG"
|
||||
- displays a menu containing whatever files the TFTP server lists as available.
|
||||
- Once a file is selected, it is downloaded via TFTP, and executed
|
||||
|
||||
ADDING MORE FILES
|
||||
|
||||
Only single-load files can be used (this may change in a future release). The files need to be in "PRG" format, i.e.the first 2 bytes of the file must be
|
||||
the load address (little-endian, i.e. low/high). The files also need to have a file extension of ".PRG" (in upper case, if your operating system of choice
|
||||
is case sensitive).
|
||||
|
||||
Files need to be placed in the 'boot/' folder.
|
||||
|
||||
Due to a limitation in the menu selection code, only the first 128 PRG files in the boot/ folder can be selected.
|
||||
|
||||
|
||||
REQUIREMENTS:
|
||||
1) RR-NET or compatible adaptor (to use under VICE, you will need pcap or winpcap installed)
|
||||
2) a DHCP server on your network
|
||||
3) a working ruby installation
|
Loading…
Reference in New Issue
Block a user