public
Description: Io programming language
Homepage: http://iolanguage.com
Clone URL: git://github.com/stevedekorte/io.git
Search Repo:
Partially functional IoPlayer for Windows
U-CUSTOMER2007\Customer (author)
Tue May 13 14:51:12 -0700 2008
commit  d57e3097d1bc9c564b8a843d1ccf09bdbe319341
tree    dd1b6ab8d3f6df2959cbc09db0e7965166299e25
parent  e259c8e0e6059a4b4666dbe037dabb5849bb9c9e
...
73
74
75
 
 
 
 
 
 
 
...
73
74
75
76
77
78
79
80
81
82
0
@@ -73,4 +73,11 @@
0
 ./addons/SGML/source/libsgml/examples/Makefile*
0
 ./addons/SGML/source/libsgml/src/Makefile*
0
 tools/editlib_test/editlib_test
0
+extras/IoPlayers/MSWindows/ioplayer/ioplayer.ncb
0
+extras/IoPlayers/MSWindows/ioplayer/ioplayer.suo
0
+extras/IoPlayers/MSWindows/ioplayer/ioplayer/Debug
0
+extras/IoPlayers/MSWindows/ioplayer/ioplayer/Release
0
+extras/IoPlayers/MSWindows/ioplayer/ioplayer/ioplayer.vcproj.CUSTOMER2007.Customer.user
0
+extras/IoPlayers/MSWindows/ioplayer/pingme.txt
0
+extras/IoPlayers/MSWindows/ioplayer/smysrv
...
89
90
91
 
92
93
94
...
89
90
91
92
93
94
95
0
@@ -89,6 +89,7 @@
0
 CC := cl -nologo
0
 CCOUTFLAG :=-Fo
0
 WARN :=
0
+#OPTIMIZE :=-Zi -MDd -D_USE_MATH_DEFINES -DWIN32 -D_DEBUG -D_CRT_SECURE_NO_DEPRECATE
0
 OPTIMIZE :=-Zi -MD -D_USE_MATH_DEFINES -DWIN32 -DNDEBUG -D_CRT_SECURE_NO_DEPRECATE
0
 AR := link -lib
0
 AROUTFLAG :=-out:
...
72
73
74
 
75
76
77
...
72
73
74
75
76
77
78
0
@@ -72,6 +72,7 @@
0
 
0
   options := method(
0
     if (platform == "windows",
0
+ //"-MDd -Zi -DWIN32 -D_DEBUG -DIOBINDINGS -D_CRT_SECURE_NO_DEPRECATE"
0
       "-MD -Zi -DWIN32 -DNDEBUG -DIOBINDINGS -D_CRT_SECURE_NO_DEPRECATE"
0
     ,
0
       "-Os -g -Wall -DSANE_POPEN -DIOBINDINGS"
...
1
2
3
4
 
5
6
7
8
...
40
41
42
43
 
44
45
46
47
 
48
49
50
51
52
...
61
62
63
64
 
65
 
66
67
 
68
69
70
...
117
118
119
 
 
120
121
122
123
...
135
136
137
138
 
139
 
140
141
142
...
1
2
3
 
4
5
6
7
8
...
40
41
42
 
43
44
45
46
 
47
48
49
50
51
52
...
61
62
63
 
64
65
66
67
 
68
69
70
71
...
118
119
120
121
122
123
124
125
126
...
138
139
140
 
141
142
143
144
145
146
0
@@ -1,7 +1,7 @@
0
 <?xml version="1.0" encoding="windows-1251"?>
0
 <VisualStudioProject
0
   ProjectType="Visual C++"
0
- Version="8,00"
0
+ Version="8.00"
0
   Name="ioplayer"
0
   ProjectGUID="{DCFDCF84-EDA0-4D65-A882-14C930ED485A}"
0
   RootNamespace="ioplayer"
0
0
@@ -40,11 +40,11 @@
0
       <Tool
0
         Name="VCCLCompilerTool"
0
         Optimization="0"
0
- AdditionalIncludeDirectories="/usr/local/lib/io/addons/OpenGL/source"
0
+ AdditionalIncludeDirectories="C:\io\addonLibs\include;..\..\..\..\..\_build\headers;..\..\..\..\..\addons\OpenGL\source"
0
         PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
0
         MinimalRebuild="true"
0
         BasicRuntimeChecks="3"
0
- RuntimeLibrary="2"
0
+ RuntimeLibrary="3"
0
         UsePrecompiledHeader="0"
0
         WarningLevel="3"
0
         Detect64BitPortabilityProblems="true"
0
0
0
@@ -61,10 +61,11 @@
0
       />
0
       <Tool
0
         Name="VCLinkerTool"
0
- AdditionalDependencies="opengl32.lib glu32.lib C:\src\io\libs\iovm\_build\dll\libiovmall.lib"
0
+ AdditionalDependencies="opengl32.lib glu32.lib libiovmall.lib"
0
         LinkIncremental="2"
0
+ AdditionalLibraryDirectories="..\..\..\..\..\_build\dll;C:\io\addonLibs\lib"
0
         GenerateDebugInformation="true"
0
- SubSystem="1"
0
+ SubSystem="2"
0
         TargetMachine="1"
0
       />
0
       <Tool
0
@@ -117,6 +118,8 @@
0
       />
0
       <Tool
0
         Name="VCCLCompilerTool"
0
+ Optimization="0"
0
+ AdditionalIncludeDirectories="C:\io\addonLibs\include;..\..\..\..\..\_build\headers;..\..\..\..\..\addons\OpenGL\source"
0
         PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
0
         RuntimeLibrary="2"
0
         UsePrecompiledHeader="0"
0
0
@@ -135,8 +138,9 @@
0
       />
0
       <Tool
0
         Name="VCLinkerTool"
0
- AdditionalDependencies="opengl32.lib glu32.lib.lib"
0
+ AdditionalDependencies="opengl32.lib glu32.lib libiovmall.lib"
0
         LinkIncremental="1"
0
+ AdditionalLibraryDirectories="..\..\..\..\..\_build\dll;C:\io\addonLibs\lib"
0
         GenerateDebugInformation="true"
0
         SubSystem="2"
0
         OptimizeReferences="2"
...
14
15
16
 
17
18
19
...
37
38
39
40
 
41
42
43
44
45
46
...
51
52
53
 
 
 
 
 
 
 
 
 
 
 
 
 
 
54
55
56
 
57
58
 
59
60
61
 
62
63
64
...
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
...
536
537
538
539
 
540
541
542
543
544
545
 
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
...
551
552
553
554
 
555
556
 
 
557
558
559
 
560
561
 
562
563
564
 
565
566
 
567
568
569
 
570
571
 
572
573
574
 
575
576
 
577
578
579
 
580
581
 
582
583
584
 
585
586
 
587
588
589
 
590
591
 
592
593
594
 
595
596
 
597
598
599
600
601
...
617
618
619
620
 
621
622
623
 
624
 
625
626
627
...
629
630
631
 
632
633
634
635
636
637
638
639
640
...
662
663
664
 
665
666
667
668
669
670
671
672
673
 
674
675
676
677
678
 
679
680
681
682
683
684
 
685
686
687
688
689
 
690
691
692
693
694
695
696
697
 
698
699
700
701
702
703
704
 
 
 
 
705
706
707
...
709
710
711
 
712
713
714
...
721
722
723
 
724
725
726
...
759
760
761
 
762
763
...
14
15
16
17
18
19
20
...
38
39
40
 
41
42
43
44
45
46
47
...
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
 
71
72
 
73
74
75
 
76
77
78
79
...
118
119
120
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
121
122
123
124
...
531
532
533
 
534
535
536
537
538
539
 
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
...
546
547
548
 
549
550
 
551
552
553
554
 
555
556
557
558
559
560
 
561
562
563
564
565
566
 
567
568
569
570
571
572
 
573
574
575
576
577
578
 
579
580
581
582
583
584
 
585
586
587
588
589
590
 
591
592
593
594
595
596
 
597
598
599
600
601
602
603
604
605
...
621
622
623
 
624
625
626
 
627
628
629
630
631
632
...
634
635
636
637
638
639
640
641
642
643
644
645
646
...
668
669
670
671
672
673
674
675
676
 
 
 
 
677
678
679
680
681
682
683
684
685
686
687
688
 
689
690
691
692
693
 
694
695
696
697
698
699
700
 
 
701
702
703
704
705
706
707
 
708
709
710
711
712
713
714
...
716
717
718
719
720
721
722
...
729
730
731
732
733
734
735
...
768
769
770
771
772
773
0
@@ -14,6 +14,7 @@
0
 #include <stdio.h>
0
 #include <fcntl.h>
0
 #include <io.h>
0
+#include <crtdbg.h>
0
 
0
 HDC      hDC=NULL;    
0
 HGLRC    hRC=NULL;    
0
@@ -37,7 +38,7 @@
0
 } glutOptions = {0};
0
 
0
 struct ioGlutFuncs {
0
-IoObject * (__cdecl *IoGLUT_glutEventTarget_)(IoGLUT *, IoObject *, IoMessage *);
0
+//IoObject * (__cdecl *IoGLUT_glutEventTarget_)(IoGLUT *, IoObject *, IoMessage *);
0
 void (__cdecl *IoGlutKeyboardFunc)(unsigned char key, int xv, int yv);
0
 void (__cdecl *IoGlutSpecialFunc)(int key, int xv, int yv);
0
 void (__cdecl *IoGlutKeyboardUpFunc)(unsigned char key, int xv, int yv);
0
0
0
0
@@ -51,14 +52,28 @@
0
 void (__cdecl *IoGlutTimerFunc)(int vv);
0
 } ioGlutFuncs;
0
 
0
+void debug(const char *format, ...)
0
+{
0
+ UArray *message;
0
+
0
+ va_list ap;
0
+ va_start(ap, format);
0
+ message = UArray_newWithVargs_(format, ap);
0
+ va_end(ap);
0
+
0
+ MessageBox(NULL, UArray_asCString(message), NULL, MB_OK);
0
+
0
+ UArray_free(message);
0
+}
0
+
0
 BOOL loadIoGlutDll()
0
 {
0
- if (ioGlutFuncs.IoGLUT_glutEventTarget_ == NULL)
0
+ if (ioGlutFuncs.IoGlutSpecialFunc == NULL)
0
   {
0
- HMODULE hLib = LoadLibrary(_T("\\usr\\local\\lib\\io\\addons\\OpenGL\\_build\\dll\\libioopengl.dll"));
0
+ HMODULE hLib = LoadLibrary(_T("io\\addons\\OpenGL\\_build\\dll\\libIoOpenGL.dll"));
0
     if (hLib == 0)
0
       return FALSE;
0
- ioGlutFuncs.IoGLUT_glutEventTarget_ = (void *)GetProcAddress(hLib, "IoGLUT_glutEventTarget_");
0
+ //ioGlutFuncs.IoGLUT_glutEventTarget_ = (void *)GetProcAddress(hLib, "IoGLUT_glutEventTarget_");
0
     ioGlutFuncs.IoGlutSpecialFunc = (void *)GetProcAddress(hLib, "IoGlutSpecialFunc");
0
     ioGlutFuncs.IoGlutKeyboardFunc = (void *)GetProcAddress(hLib, "IoGlutKeyboardFunc");
0
     ioGlutFuncs.IoGlutKeyboardUpFunc = (void *)GetProcAddress(hLib, "IoGlutKeyboardUpFunc");
0
@@ -103,26 +118,6 @@
0
 {
0
   if (glutOptions.doesDisplay)
0
     if (loadIoGlutDll()) ioGlutFuncs.IoGlutDisplayFunc();
0
- /*
0
- static float t = 0;
0
- t+=0.1f;
0
- glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);
0
- glLoadIdentity();
0
- glDisable(GL_DEPTH_TEST);
0
-
0
- glHint(GL_LINE_SMOOTH_HINT, GL_NICEST);
0
-
0
- glRotatef(t, 0, 0, 1);
0
- glScalef(0.1f, 0.1f, 0.1f);
0
-
0
- glBegin(GL_QUADS);
0
- glColor3f(1, 0, 0.5f);
0
- glVertex2f(-1, -1);
0
- glVertex2f(1, -1);
0
- glVertex2f(1, 1);
0
- glVertex2f(-1, 1);
0
- glEnd();
0
- */
0
   return TRUE;                    
0
 }
0
 
0
0
@@ -536,13 +531,13 @@
0
   return DefWindowProc(hWnd,uMsg,wParam,lParam);
0
 }
0
 
0
-void StartIO(LPCTSTR aScriptName)
0
+void StartIO()
0
 {
0
   ioState = IoState_new();  
0
   IoState_init(ioState);
0
   
0
 //  IoState_argc_argv_(ioState, 1, pbuf);
0
- IoState_runCLI(ioState);
0
+// IoState_runCLI(ioState);
0
 //  IoState_doFile_(ioState, aScriptName);
0
 }
0
 
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
@@ -551,49 +546,58 @@
0
   if (ioState) IoState_free(ioState);
0
 }
0
 
0
-void GLIoView_postRedisplay(IoGL *self, IoObject *locals, IoMessage *m)
0
+IoObject *GLIoView_postRedisplay(IoGL *self, IoObject *locals, IoMessage *m)
0
 {
0
-// glutOptions.doesDisplay = TRUE; !
0
+ glutOptions.doesDisplay = TRUE;
0
+ return self;
0
 }
0
 
0
-void GLIoView_glutReshapeFunc(IoGL *self, IoObject *locals, IoMessage *m)
0
+IoObject *GLIoView_glutReshapeFunc(IoGL *self, IoObject *locals, IoMessage *m)
0
 {
0
   glutOptions.doesReshape = TRUE;
0
+ return self;
0
 }
0
 
0
-void GLIoView_glutDisplayFunc(IoGL *self, IoObject *locals, IoMessage *m)
0
+IoObject *GLIoView_glutDisplayFunc(IoGL *self, IoObject *locals, IoMessage *m)
0
 {
0
   glutOptions.doesDisplay = TRUE;
0
+ return self;
0
 }
0
 
0
-void GLIoView_glutEntryFunc(IoGL *self, IoObject *locals, IoMessage *m)
0
+IoObject *GLIoView_glutEntryFunc(IoGL *self, IoObject *locals, IoMessage *m)
0
 {
0
   glutOptions.doesEntry = TRUE;
0
+ return self;
0
 }
0
 
0
-void GLIoView_glutMouseFunc(IoGL *self, IoObject *locals, IoMessage *m)
0
+IoObject *GLIoView_glutMouseFunc(IoGL *self, IoObject *locals, IoMessage *m)
0
 {
0
   glutOptions.doesMouse = TRUE;
0
+ return self;
0
 }
0
 
0
-void GLIoView_glutMotionFunc(IoGL *self, IoObject *locals, IoMessage *m)
0
+IoObject *GLIoView_glutMotionFunc(IoGL *self, IoObject *locals, IoMessage *m)
0
 {
0
   glutOptions.doesMotion = TRUE;
0
+ return self;
0
 }
0
 
0
-void GLIoView_glutSpecialFunc(IoGL *self, IoObject *locals, IoMessage *m)
0
+IoObject *GLIoView_glutSpecialFunc(IoGL *self, IoObject *locals, IoMessage *m)
0
 {
0
   glutOptions.doesSpecial = TRUE;
0
+ return self;
0
 }
0
 
0
-void GLIoView_glutKeyboardFunc(IoGL *self, IoObject *locals, IoMessage *m)
0
+IoObject *GLIoView_glutKeyboardFunc(IoGL *self, IoObject *locals, IoMessage *m)
0
 {
0
   glutOptions.doesKeyboard = TRUE;
0
+ return self;
0
 }
0
 
0
-void GLIoView_glutPassiveMotionFunc(IoGL *self, IoObject *locals, IoMessage *m)
0
+IoObject *GLIoView_glutPassiveMotionFunc(IoGL *self, IoObject *locals, IoMessage *m)
0
 {
0
   glutOptions.doesPassiveMotion = TRUE;
0
+ return self;
0
 }
0
 
0
 IoObject *GLIoView_glutReshapeWindow(IoGLUT *self, IoObject *locals, IoMessage *m)
0
0
0
@@ -617,11 +621,12 @@
0
   int val = IoMessage_locals_intArgAt_(m, locals, 1);
0
 
0
   g_timerVal = val;
0
- SetTimer(NULL, 1, millisecs, timerProc);
0
+ SetTimer(hWnd, 1, millisecs, timerProc);
0
 }
0
 
0
-void GLIoView_noop(IoGL *self, IoObject *locals, IoMessage *m)
0
+IoObject *GLIoView_noop(IoGL *self, IoObject *locals, IoMessage *m)
0
 {
0
+ return IONIL(self);
0
 }
0
 
0
 #define IOCFUNCTION_GL(func) IoCFunction_newWithFunctionPointer_tag_name_(ioState, (void *)func, NULL, "")
0
@@ -629,6 +634,7 @@
0
 void overrideIoGLMethods()
0
 {
0
   IoObject *cxt = IoState_doCString_(ioState, "GLUT");
0
+ IoObject *self = cxt;
0
 
0
   IoCFunction *noopfunc = IOCFUNCTION_GL(GLIoView_noop);
0
   
0
0
0
0
0
0
0
@@ -662,46 +668,47 @@
0
              IOCFUNCTION_GL(GLIoView_postRedisplay));
0
   
0
   IoObject_setSlot_to_(cxt, IoState_symbolWithCString_(ioState, "glutInit"), noopfunc);
0
+
0
   IoObject_setSlot_to_(cxt, IoState_symbolWithCString_(ioState, "glutMainLoop"), noopfunc);
0
   IoObject_setSlot_to_(cxt, IoState_symbolWithCString_(ioState, "glutInitDisplayMode"), noopfunc);
0
   IoObject_setSlot_to_(cxt, IoState_symbolWithCString_(ioState, "glutInitWindowSize"), noopfunc);
0
   IoObject_setSlot_to_(cxt, IoState_symbolWithCString_(ioState, "glutCreateWindow"), noopfunc);
0
   IoObject_setSlot_to_(cxt, IoState_symbolWithCString_(ioState, "glutInitWindowPosition"), noopfunc);
0
- /*
0
- IoObject_setSlot_to_(cxt, IoState_symbolWithCString_(ioState, "glutEventTarget"),
0
- IOCFUNCTION_GL(IoGLUT_glutEventTarget_));
0
- */
0
+ //IoObject_setSlot_to_(cxt, IoState_symbolWithCString_(ioState, "glutEventTarget"), IOCFUNCTION_GL(IoGLUT_glutEventTarget_));
0
   IoObject_setSlot_to_(cxt, IoState_symbolWithCString_(ioState, "glutInitDisplayMode"), noopfunc);
0
   IoObject_setSlot_to_(cxt, IoState_symbolWithCString_(ioState, "glutSwapBuffers"),
0
              IOCFUNCTION_GL(GLIoView_postRedisplay));
0
 }
0
 
0
+/*
0
 int main(int argc, char **argv)
0
 {
0
   ioState = IoState_new();  
0
   IoState_init(ioState);
0
   overrideIoGLMethods();
0
-// IoState_doFile_(ioState, "main.io");
0
+ IoState_doFile_(ioState, "main.io");
0
   IoState_argc_argv_(ioState, argc, argv);
0
   IoState_runCLI(ioState);
0
   StartGL();
0
   if (ioState) IoState_free(ioState);
0
-}
0
+}*/
0
 
0
 int StartGL()
0
 {
0
   MSG    msg;                  
0
   BOOL  done=FALSE;                
0
 
0
-// StartIO(_T("main.io"));
0
-// IoState_doFile_(ioState, "main.io");
0
+ StartIO();
0
 
0
   // Create Our OpenGL Window
0
   if (!CreateGLWindow(_T("NeHe's OpenGL Framework"),640,480,32,fullscreen))
0
   {
0
     return 0;                  
0
   }
0
-
0
+
0
+ overrideIoGLMethods();
0
+ IoState_doFile_(ioState, "main.io");
0
+
0
   if (glutOptions.doesReshape)
0
     if (loadIoGlutDll()) ioGlutFuncs.IoGlutReshapeFunc(640,480);
0
 
0
@@ -709,6 +716,7 @@
0
   {
0
     if (PeekMessage(&msg,NULL,0,0,PM_REMOVE))  
0
     {
0
+ printf("PeekMessage\n");
0
       if (msg.message==WM_QUIT)        
0
       {
0
         done=TRUE;              
0
@@ -721,6 +729,7 @@
0
     }
0
     else                    
0
     {
0
+ printf("No PeekMessage\n");
0
       if (active)                
0
       {
0
         if (keys[VK_ESCAPE])        // Was ESC Pressed?
0
@@ -759,6 +768,7 @@
0
           LPSTR    lpCmdLine,      
0
           int      nCmdShow)      
0
 {
0
+ freopen( "debug.txt", "w", stdout);
0
   return StartGL();
0
 }
...
94
95
96
 
97
98
99
...
94
95
96
97
98
99
100
0
@@ -94,6 +94,7 @@
0
 DLL_SUFFIX := dll
0
 DLL_COMMAND := -dll
0
 LFLAGS += ws2_32.lib kernel32.lib shell32.lib
0
+#OPTIMIZE := -Zi -MDd -DWIN32 -D_DEBUG -DBUILDING_IOVMALL_DLL -D_CRT_SECURE_NO_DEPRECATE
0
 OPTIMIZE := -Zi -MD -DWIN32 -DNDEBUG -DBUILDING_IOVMALL_DLL -D_CRT_SECURE_NO_DEPRECATE
0
 WARN :=
0
 LINKDIRFLAG := -libpath:

Comments

    No one has commented yet.