=================================================================== RCS file: /home/cvs/OpenXM/src/kan96xx/Doc/oxasir-win.sm1,v retrieving revision 1.1 retrieving revision 1.14 diff -u -p -r1.1 -r1.14 --- OpenXM/src/kan96xx/Doc/oxasir-win.sm1 2001/12/21 03:00:41 1.1 +++ OpenXM/src/kan96xx/Doc/oxasir-win.sm1 2002/08/03 06:02:35 1.14 @@ -1,5 +1,167 @@ -% $OpenXM$ +% $OpenXM: OpenXM/src/kan96xx/Doc/oxasir-win.sm1,v 1.13 2002/07/31 02:57:37 takayama Exp $ % It is empty for now. % -/oxasir.sm1.loaded 10 def -(oxasir-win.sm1 is loaded. It is an empty module for now.) message +/oxasir.sm1.loaded 1 def +(oxasir-win.sm1 (C) N.Takayama, 1/9, 2002) message + +[(getenv) (OPENXMHOMEWIN)] extension +/OpenXM_HOME_WIN set +OpenXM_HOME_WIN tag 0 eq { + [(getenv) (OpenXM_HOME)] extension + /OpenXM_HOME_WIN set +} { } ifelse +OpenXM_HOME_WIN tag 0 eq { + %% Hard encoding: + /OpenXM_HOME_WIN + (\OpenXM-win) +% (\cygwin\home\nobuki\OpenXM\misc\packages\Windows\OpenXM-win) + def +} { } ifelse + + +ox.ostype 1 get (cygwin) eq { + /oxasirpath.oxasir + [ (c:/cygwin) OpenXM_HOME_WIN + (/bin/ox_asir) ] cat + def + /oxasirpath.asirlib + [ [(getenv) (OpenXM_HOME)] extension + (/lib/sm1/oxasir.asir) ] cat + def + /oxpath.ox + (ox) + def +}{ } ifelse + +ox.ostype 1 get (xcygwin) eq { + /oxasirpath.oxasir + [ [(getenv) (OpenXM_HOME)] extension + (/bin/ox_asir) ] cat + def + /oxasirpath.asirlib + [ [(getenv) (OpenXM_HOME)] extension + (/lib/sm1/oxasir.asir) ] cat + def + /oxpath.ox + (ox) + def +}{ } ifelse + +ox.ostype 1 get (native) eq { + /oxasirpath.oxasir + [ OpenXM_HOME_WIN + (\bin\ox_asir) ] cat + def + /oxasirpath.asirlib + [ OpenXM_HOME_WIN + (/lib/sm1/oxasir.asir) + ] cat + def + /oxpath.ox + [ OpenXM_HOME_WIN + (\bin\ox.exe) + ] cat + def +}{ } ifelse +%% Override asirconnectr + +/asirconnectr { + ox.ostype 1 get (cygwin) eq { + asirconnectr_cygwin + }{ } ifelse + ox.ostype 1 get (xcygwin) eq { + asirconnectr_xcygwin + }{ } ifelse + ox.ostype 1 get (native) eq { + asirconnectr_win + }{ } ifelse +} def + +/asirconnectr_cygwin { + [/in-asirconnectr /pass /peer /data /control /oxasir /sss ] pushVariables + [ + /pass [(oxGenPass)] extension def + /peer [(oxGetPort) (localhost)] extension def + /data peer 1 get toString def + /control peer 3 get toString def + peer message + [ox.win.start { ( ) } map cat ox_backslash_to_slash + ( ox ) ( -reverse -ox ) + oxasirpath.oxasir + ( -data ) data ( -control ) control ( -pass ) pass + ( -wait 5 ) + oxpath.null + ] cat /sss set + sss message sss system + [(oxCreateClient2) peer 0 pass] extension /oxasir set + %% 0 means connect from only localhost. + oxasir asirinit + /arg1 oxasir def + ] pop + popVariables + arg1 +} def + +/asirconnectr_xcygwin { + [/in-asirconnectr /pass /peer /data /control /oxasir /sss ] pushVariables + [ + /pass [(oxGenPass)] extension def + /peer [(oxGetPort) (localhost)] extension def + /data peer 1 get toString def + /control peer 3 get toString def + peer message + [(oxlog /usr/X11R6/bin/xterm -iconic -e ) + ( ox ) ( -reverse -ox ) + oxasirpath.oxasir + ( -data ) data ( -control ) control ( -pass ) pass + ( -wait 5 ) + oxpath.null + ] cat /sss set + sss message sss system + [(oxCreateClient2) peer 0 pass] extension /oxasir set + %% 0 means connect from only localhost. + oxasir asirinit + /arg1 oxasir def + ] pop + popVariables + arg1 +} def + +/asirconnectr_win { + [/in-asirconnectr /pass /peer /data /control /oxasir] pushVariables + [ + /pass [(oxGenPass)] extension def + /peer [(oxGetPort) (localhost)] extension def + /data peer 1 get toString def + /control peer 3 get toString def + peer message + + + [(forkExec) [ + ox.win.start aload pop + oxpath.ox + (-reverse) + (-ox) + oxasirpath.oxasir + (-data) + data + (-control) + control + (-pass) + pass + (-wait) + (5) + ] + [ ] 3] extension + + [(oxCreateClient2) peer 0 pass] extension /oxasir set + %% 0 means connect from only localhost. + oxasir asirinit + /arg1 oxasir def + ] pop + popVariables + arg1 +} def + +%% +