Successfully reported this slideshow.
Your SlideShare is downloading. ×

MOSP Walkthrough 2009

Loading in …3

Check these out next

1 of 19 Ad

More Related Content

Slideshows for you (20)

Similar to MOSP Walkthrough 2009 (20)


Recently uploaded (20)

MOSP Walkthrough 2009

  1. 1. A walk through the Marinetti Open Source Project Andrew Roughan Mt KeiraFest 2009
  2. 2. What is Marinetti? <ul><li>TCP/IP stack for the Apple IIgs </li></ul><ul><li>Required for running internet applications </li></ul><ul><ul><li>e.g. FTP (Silver Platter/SAFE2), News reader (SNAP), Telnet (TelnetNDA), Web server (Casper) etc </li></ul></ul><ul><li>Originally written by Richard Bennett </li></ul><ul><li> </li></ul><ul><li>What is MOSP? </li></ul><ul><li>M arinetti O pen S ource P roject </li></ul><ul><li> </li></ul>
  3. 3. MOSP Jeopardy
  4. 4. MOSP Jeopardy for $100 <ul><li>How old is Marinetti? </li></ul>
  5. 5. MOSP Jeopardy for $200 <ul><li>True/False: The only source code in MOSP CVS is for the Merlin assembler? </li></ul>
  6. 6. MOSP Jeopardy for $300 <ul><li>How many ‘bugs’ have been ‘closed’ since MOSP began? </li></ul>
  7. 7. MOSP Jeopardy for $400 <ul><li>How many ‘bugs’ are currently ‘open’? </li></ul>
  8. 8. MOSP Jeopardy for $500 <ul><li>How many files are there in MOSP CVS? </li></ul>
  9. 9. MOSP Resources <ul><li>Developer forums </li></ul><ul><li>Developer mailing list </li></ul><ul><li>Tracker </li></ul><ul><ul><li>Bugs, new features, support requests </li></ul></ul><ul><li>Source code repository </li></ul><ul><ul><li>Build documentation </li></ul></ul>
  10. 10. MOSP CVS File Structure pt1 <ul><li>MarinettiDev - build files for TCPIP Control Panel </li></ul><ul><li>Marinettiocumentation - user documentation for final releases </li></ul><ul><li>Marinettiquates - shared Equates files </li></ul><ul><li>Marinettinit - build files for TCPIP Init </li></ul><ul><li>MarinettiinkLayersC - build files for Direct Connect LL </li></ul><ul><li>MarinettiinkLayersacIP - build files for MacIP LL </li></ul><ul><li>MarinettiinkLayersPP - build files for PPP LL </li></ul><ul><li>MarinettiinkLayersPPX - build files for Scripted PPP LL </li></ul><ul><li>MarinettiinkLayersLIP - build files for SLIP LL </li></ul><ul><li>MarinettioolStub - build files for Tool054 </li></ul>
  11. 11. MOSP CVS File Structure pt2 <ul><li>Applicationsasper – build files for Casper web server </li></ul><ul><li>Applicationselnet – build files for Telnet client </li></ul><ul><li>ToolsnstallMagic - input files for Installer builder application </li></ul><ul><li>Toolserlinommands - Shell command object files (EXE) </li></ul><ul><li>Toolserlinelp.Files - Documentation for Command files </li></ul><ul><li>Toolserlinibrary - Subroutine library files (LNK) </li></ul><ul><li>Toolserlinacros - Macro source files </li></ul><ul><li>Toolserlincripts - Script (link) files for doing useful things </li></ul><ul><li>ToolsiftyList - TCP/IP tool interface files </li></ul><ul><li>ToolsSoftBASIC - TCP/IP tool interface files </li></ul><ul><li>Toolsrca.C - TCP/IP tool interface files </li></ul><ul><li>Toolsrca.M - TCP/IP tool interface files </li></ul><ul><li>Toolsrca.Pascal - TCP/IP tool interface files </li></ul><ul><li>Toolsystemrypto - build files for Crypto tool set </li></ul><ul><li>UtilitiesCPSnooper – build files for TCPSnooper debugging utility </li></ul>
  12. 12. MOSP Important docs <ul><li>Readme – directory structure </li></ul><ul><li>PrepareDevEnv </li></ul><ul><ul><li>Step by step how to set up development environment </li></ul></ul><ul><li>HowToBuild </li></ul><ul><ul><li>Step by step how to assemble a file </li></ul></ul><ul><li>HowToRelease </li></ul><ul><ul><li>Step by step how to build an installer </li></ul></ul>
  13. 13. Development Environment <ul><li>System 6.0.1 </li></ul><ul><li>Merlin v4.12 – location? </li></ul><ul><li>Merlin patch Z08 </li></ul><ul><li>System 6.0.1 macro files for Merlin </li></ul><ul><li>Object file for Serial port driver </li></ul><ul><li>Richard’s Merlin utilities </li></ul><ul><li>800k RAM disk named ‘RAM5’ </li></ul>
  14. 14. Moving Source between CVS and IIgs - intro <ul><li>Pre-requisites (that I use) </li></ul><ul><li>MacCVSClient (I use 1.6 PPC) </li></ul><ul><li>MacSSH (I use 2.1fc1 PPC) </li></ul><ul><li>RAM Disk </li></ul><ul><li>Bernie ][ The Rescue 2.5 </li></ul>
  15. 15. Moving Source between CVS and IIgs - overview <ul><li>Extract CVS content to CVS capable platform (Mac) </li></ul><ul><li>Copy to IIgs (via RAM Disk?) </li></ul><ul><li>Make changes on IIgs (emulator) </li></ul><ul><li>Copy to CVS capable platform (Mac) </li></ul><ul><ul><ul><li>beware of high bits in source code! </li></ul></ul></ul><ul><li>Compare differences with CVS </li></ul><ul><li>Check-in </li></ul>
  16. 16. Building an Installer - intro <ul><li>Pre-requisites: </li></ul><ul><li>Obtain InstallMagic (I use 1.0d5) </li></ul><ul><li>800k RAM disk on IIgs </li></ul>
  17. 17. Building an Installer <ul><li>Build the source files to create the object files </li></ul><ul><li>Prepare the object files for packaging </li></ul><ul><li>Package the object files into an Installer for release </li></ul><ul><li>Make the Installer available & announce it </li></ul><ul><li>Package the build files for release ( if changed ) </li></ul><ul><li>Make the build files available ( if changed ) </li></ul><ul><li>Cleanup </li></ul>
  18. 18. What’s New in 2009? <ul><li>Uthernet Link Layer is now part of MOSP (Glenn Jones and Ewen Wannop) </li></ul><ul><li>All the source code to build the Marinetti Init, CDEV and tool stub is now available. </li></ul><ul><li>Tool interface file now available for Complete Pascal (Mike Stephens aka Polymorph) </li></ul><ul><li>Marinetti FAQ has been reworked for v3.0 (Ryan Suenaga) </li></ul>
  19. 19. What can you do? <ul><li>Fix a bug – see tracker </li></ul><ul><li>Develop a new feature – see tracker </li></ul><ul><li>Contribute language interface files for languages not currently supported: Orca/Modula 2 </li></ul><ul><li>Suggest improvements to the processes used </li></ul>

Editor's Notes

  • Marinetti announced at Kfest 1997. 12 Years old.
  • TCPSnooper has Orca/C and Orca/M, language files for Orca languages Uthernet Link Layer is in Orca/M
  • 33
  • 17
  • 197 files including CVS droppings, documentation, language interface files
  • Applications - directory for applications that use Marinetti Tools - Assembler/Compiler specific items ToolsSystem - IIgs System tool sets that Marinetti uses Utilities - Directory for development and debugging utilities
  • Refer to PrepareDevEnv and HowToBuild documents for more information on these points.
  • Code resides in CVS on Sourceforge. To commit changes, a developer has to be logged into CVS using SSH protocol. There is no CVS or SSH implementation for the Iigs therefore code commits and extractions must be done on another platform. I use a PowerBook 1400/G3 running MacOS 8.1.
  • Refer to HowToRelease document for more information on these steps