Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > comp.sys.apple2.programmer > #1812 > unrolled thread

Marina IP switches to ProDOS for development

Started byD Finnigan <dog_cow@macgui.com>
First post2015-10-10 22:01 +0000
Last post2015-10-11 19:43 +0000
Articles 6 — 2 participants

Back to article view | Back to comp.sys.apple2.programmer


Contents

  Marina IP switches to ProDOS for development D Finnigan <dog_cow@macgui.com> - 2015-10-10 22:01 +0000
    Re: Marina IP switches to ProDOS for development Hugh Hood <hughhood@earthlink.net> - 2015-10-10 22:09 -0500
      Re: Marina IP switches to ProDOS for development D Finnigan <dog_cow@macgui.com> - 2015-10-11 19:35 +0000
        Re: Marina IP switches to ProDOS for development Hugh Hood <hughhood@earthlink.net> - 2015-10-11 19:51 -0500
          Re: Marina IP switches to ProDOS for development D Finnigan <dog_cow@macgui.com> - 2015-10-12 13:48 +0000
    Re: Marina IP switches to ProDOS for development D Finnigan <dog_cow@macgui.com> - 2015-10-11 19:43 +0000

#1812 — Marina IP switches to ProDOS for development

FromD Finnigan <dog_cow@macgui.com>
Date2015-10-10 22:01 +0000
SubjectMarina IP switches to ProDOS for development
Message-ID<dog_cow-1444514634@macgui.com>
Today I set up an 800 KB ProDOS disk and I used the ProDOS User's Utilities
to copy the source for the Marina IP stack from the two 143 KB DOS 3.3 disks
to this single ProDOS disk. I then copied Merlin Pro too and re-saved all
the source files to be TXT instead of BIN.

The result seems to assemble correctly both in ProDOS Merlin and GS/OS
Merlin 16+. I get 9967 bytes, which is what it should be for DOS 3.3 Merlin.

If anyone was interested in looking at Marina's source code, but was turned
away due to it being in DOS 3.3, now that obstacle is eliminated. The source
may even assemble in Brutal-Deluxe Merlin 32, but I don't know, because I
don't use Windows.

People who prefer using the IIgs for development will find that the source
is compatible with Merlin 16+, and Marina itself is compatible with the IIgs
too!

The source code is from 07 July 2015. It does not include the in-progress
driver for the Uthernet II, but it does include the following changes since
the June 2015 edition of Marina:

- Uthernet slot is now a conditional assembly-time variable.
- Added conditional assembly opcodes to UDP.S and ETH.S
- Added Multicasting, RFC 1112 level 1 conformance
- Added NSSERV to DNS.S to choose between name servers
- Moved IPADDR out of zero-page
- DHCP DISCOVER explicitly sets default TTL
- ARPADD will not add IP addresses starting with 0 octet
- Fixed off-by-one offset for target IP address in ARP.S
- Moved LDY #2 out of loop in SOGETUDPSOBY (performance optimization)
- Wrote UDPICMPERR
- Integrated UDPICMPERR in HANDLEICMP
- Added LLBCASTFLAG for link layer broadcasts (RFC 1122, pg 25)

I am not distributing the source via any web site, but instead have uploaded
it to the Asimov FTP site where you will find it under the file name "Marina
IP - ProDOS source 07 Jul 15.zip" I will also send it to anyone who asks for
it via email to me.

I plan on releasing a November edition of Marina, which will be distributed
on the Marina web site and will also be in ProDOS format (as will all future
editions of Marina).

-- 
]DF$
The Marina IP stack for Apple II--
http://marina.a2hq.com/

[toc] | [next] | [standalone]


#1813

FromHugh Hood <hughhood@earthlink.net>
Date2015-10-10 22:09 -0500
Message-ID<D23F3D2E.11892%hughhood@earthlink.net>
In reply to#1812
David:

I acknowledge that it's a minor point in the grand scheme of what you've
done with Marina, but Merlin 32 works just fine from the Mac OS X terminal.
In fact, its speed is almost intoxicating.

Regards,




Hugh Hood



in article dog_cow-1444514634@macgui.com, D Finnigan at dog_cow@macgui.com
wrote on 10/10/15 5:01 PM:

> 
> If anyone was interested in looking at Marina's source code, but was turned
> away due to it being in DOS 3.3, now that obstacle is eliminated. The source
> may even assemble in Brutal-Deluxe Merlin 32, but I don't know, because I
> don't use Windows.
> 

[toc] | [prev] | [next] | [standalone]


#1814

FromD Finnigan <dog_cow@macgui.com>
Date2015-10-11 19:35 +0000
Message-ID<dog_cow-1444592261@macgui.com>
In reply to#1813
Hugh Hood wrote:
> David:
> 
> I acknowledge that it's a minor point in the grand scheme of what you've
> done with Marina, but Merlin 32 works just fine from the Mac OS X
> terminal.
> In fact, its speed is almost intoxicating.

Well I didn't know that! Thanks so much for telling me. :-)

So you just compile from source and that's all there is to it?

[toc] | [prev] | [next] | [standalone]


#1816

FromHugh Hood <hughhood@earthlink.net>
Date2015-10-11 19:51 -0500
Message-ID<D2406E43.118A0%hughhood@earthlink.net>
In reply to#1814
David:

Just a couple of things:

1. I created an AppleScript Droplet to compile the Merlin Source without
ever having to go to the Terminal. Just drop the Merlin source file on the
Droplet and the Apple II Object file is created (assuming no errors).


(With apologies to the non-Mac guys) Like this:

-- A Script to assemble Apple II Merlin Source Files to Object Code using
Merlin 32.


choose file with prompt "Select a file:" -- if double-clicked
copy the result to thisFile
mainRoutine(thisFile)

return -- not needed, but shows that the script stops here when "run"


on open thisFileList
    repeat with thisFile in thisFileList
        mainRoutine(thisFile)
    end repeat
    
end open


-- main routine is here

on mainRoutine(thisFile)
    do shell script "cd ~/Desktop; PATH=\"$PATH:/usr/local/bin\" merlin32 -V
Library/ " & quoted form of POSIX path of thisFile
end mainRoutine


-- END SCRIPT


2. Merlin 32 requires 'normalized' ASCII and Unix (LF) line enders. Since I
use BBEdit to do all my Merlin editing now,

 <http://home.earthlink.net/~hughhood/MerlinInBBEdit.jpg>

I set up a Unix filter in BBEdit that takes the Apple II 'Merlin' ASCII and
converts it to 'normal' ASCII, and then I save it with LF line enders. It's
then ready to go.

The only reason I do that dance is because I keep telling myself that I will
take the Merlin files back to the Apple II side to use. I haven't yet.
Besides, I made another Unix filter to convert back if needed. I should keep
everything Merlin now in 'normal' ASCII with LF line enders and just be done
with it.

Let me know if you'd like to see the BBEdit Unix filters. There's an
AppleScript and language module (based on Ivan Drucker's work) too so that
everything looks good. I'm sure that I'm already pushing the tolerance level
of the Windows guys by now, so I'll end it here. :-)




Hugh Hood




in article dog_cow-1444592261@macgui.com, D Finnigan at dog_cow@macgui.com
wrote on 10/11/15 2:35 PM:

> Hugh Hood wrote:
>> David:
>> 
>> I acknowledge that it's a minor point in the grand scheme of what you've
>> done with Marina, but Merlin 32 works just fine from the Mac OS X
>> terminal.
>> In fact, its speed is almost intoxicating.
> 
> Well I didn't know that! Thanks so much for telling me. :-)
> 
> So you just compile from source and that's all there is to it?
> 

[toc] | [prev] | [next] | [standalone]


#1817

FromD Finnigan <dog_cow@macgui.com>
Date2015-10-12 13:48 +0000
Message-ID<352448081466350473.089559dog_cow-macgui.com@news.eternal-september.org>
In reply to#1816
Hugh Hood <hughhood@earthlink.net> wrote:
 >
> Let me know if you'd like to see the BBEdit Unix filters. There's an
> AppleScript and language module (based on Ivan Drucker's work) too so that
> everything looks good. I'm sure that I'm already pushing the tolerance level
> of the Windows guys by now, so I'll end it here. :-)
> 

The heck with them! :-) Thanks for sharing your  workflow. I only use
TextEdit for all programming on OS X.

[toc] | [prev] | [next] | [standalone]


#1815

FromD Finnigan <dog_cow@macgui.com>
Date2015-10-11 19:43 +0000
Message-ID<dog_cow-1444592709@macgui.com>
In reply to#1812
D Finnigan wrote:
>
> I am not distributing the source via any web site, but instead have
> uploaded it to the Asimov FTP site where you will find it under the file
> name

Find all these files under /pub/apple_II/images/communications/

Marina IP - ProDOS source 07 Jul 15.zip
Marina IP Demo - 1st June 2015 Read Me.txt
Marina IP Demo - 1st June 2015.dsk

Note that the files marked June 2015 have already been posted on the Marina
web site, so you don't need to download them again from Asimov. The one that
says ProDOS source is probably what everyone wants. :-)


The final note for today is that I updated the Marina Technical Library with
links to some more RFCs.
http://marina.a2hq.com/mtl/

[toc] | [prev] | [standalone]


Back to top | Article view | comp.sys.apple2.programmer


csiph-web