comparison interp.c @ 47:6202b866d72c

Cleaned up constructor names and merged some other changes in to support the Rhope website
author Mike Pavone <pavone@retrodev.com>
date Tue, 22 Dec 2009 01:22:09 -0500
parents 429b5f441381
children
comparison
equal deleted inserted replaced
46:429b5f441381 47:6202b866d72c
1634 aworker = create_worker(prog, "Length@List", 1, 1, WORKER_TYPE); 1634 aworker = create_worker(prog, "Length@List", 1, 1, WORKER_TYPE);
1635 aworker->implement_func = (custom_worker *)vis_list_length; 1635 aworker->implement_func = (custom_worker *)vis_list_length;
1636 aworker->input_types[0] = BUILTIN_TYPE_LIST; 1636 aworker->input_types[0] = BUILTIN_TYPE_LIST;
1637 //add_method(this_comp, aworker); 1637 //add_method(this_comp, aworker);
1638 1638
1639 aworker = create_worker(prog, "New@List",0, 1, WORKER_TYPE); 1639 aworker = create_worker(prog, "List",0, 1, WORKER_TYPE);
1640 aworker->implement_func=(custom_worker *)vis_list_new; 1640 aworker->implement_func=(custom_worker *)vis_list_new;
1641 //add_method(this_comp, aworker); 1641 //add_method(this_comp, aworker);
1642 1642
1643 aworker = create_worker(prog, "First@List", 1, 2, WORKER_TYPE); 1643 aworker = create_worker(prog, "First@List", 1, 2, WORKER_TYPE);
1644 aworker->implement_func=(custom_worker *)vis_list_first; 1644 aworker->implement_func=(custom_worker *)vis_list_first;
1683 aworker->implement_func=(custom_worker *)vis_dict_length; 1683 aworker->implement_func=(custom_worker *)vis_dict_length;
1684 aworker->input_types[0] = BUILTIN_TYPE_DICT; 1684 aworker->input_types[0] = BUILTIN_TYPE_DICT;
1685 1685
1686 //add_method(this_comp, aworker); 1686 //add_method(this_comp, aworker);
1687 1687
1688 aworker = create_worker(prog, "New@Dictionary",0, 1, WORKER_TYPE); 1688 aworker = create_worker(prog, "Dictionary",0, 1, WORKER_TYPE);
1689 aworker->implement_func=(custom_worker *)vis_dict_new; 1689 aworker->implement_func=(custom_worker *)vis_dict_new;
1690 //add_method(this_comp, aworker); 1690 //add_method(this_comp, aworker);
1691 1691
1692 aworker = create_worker(prog, "First@Dictionary", 1, 2, WORKER_TYPE); 1692 aworker = create_worker(prog, "First@Dictionary", 1, 2, WORKER_TYPE);
1693 aworker->implement_func=(custom_worker *)vis_dict_first; 1693 aworker->implement_func=(custom_worker *)vis_dict_first;
1840 aworker->implement_func=(custom_worker *)vis_worker_setio_counts; 1840 aworker->implement_func=(custom_worker *)vis_worker_setio_counts;
1841 aworker->input_types[0] = BUILTIN_TYPE_WORKER; 1841 aworker->input_types[0] = BUILTIN_TYPE_WORKER;
1842 aworker->input_types[1] = BUILTIN_TYPE_WHOLE; 1842 aworker->input_types[1] = BUILTIN_TYPE_WHOLE;
1843 aworker->input_types[2] = BUILTIN_TYPE_WHOLE; 1843 aworker->input_types[2] = BUILTIN_TYPE_WHOLE;
1844 1844
1845 aworker = create_worker(prog, "New@Worker", 1, 1, WORKER_TYPE); 1845 aworker = create_worker(prog, "Worker", 1, 1, WORKER_TYPE);
1846 aworker->implement_func=(custom_worker *)vis_worker_new; 1846 aworker->implement_func=(custom_worker *)vis_worker_new;
1847 aworker->input_types[0] = BUILTIN_TYPE_STRING; 1847 aworker->input_types[0] = BUILTIN_TYPE_STRING;
1848 1848
1849 #ifdef GUI_LIB 1849 #ifdef GUI_LIB
1850 current_method = 0; 1850 current_method = 0;
1851 1851
1852 this_comp = create_company(prog, "Window", 3, 0, FALSE); 1852 this_comp = create_company(prog, "Window", 3, 0, FALSE);
1853 1853
1854 aworker = create_worker(prog, "New@Window", 3, 1, WORKER_TYPE); 1854 aworker = create_worker(prog, "Window", 3, 1, WORKER_TYPE);
1855 aworker->implement_func=(custom_worker *)vis_window_new; 1855 aworker->implement_func=(custom_worker *)vis_window_new;
1856 aworker->input_types[0] = BUILTIN_TYPE_STRING; 1856 aworker->input_types[0] = BUILTIN_TYPE_STRING;
1857 aworker->input_types[1] = BUILTIN_TYPE_REAL; 1857 aworker->input_types[1] = BUILTIN_TYPE_REAL;
1858 aworker->input_types[2] = BUILTIN_TYPE_REAL; 1858 aworker->input_types[2] = BUILTIN_TYPE_REAL;
1859 //add_method(this_comp, aworker); 1859 //add_method(this_comp, aworker);
1910 #endif 1910 #endif
1911 1911
1912 current_method = 0; 1912 current_method = 0;
1913 create_company(prog, "Button", 2, 0, FALSE); 1913 create_company(prog, "Button", 2, 0, FALSE);
1914 1914
1915 aworker = create_worker(prog, "New@Button", 3, 1, WORKER_TYPE); 1915 aworker = create_worker(prog, "Button", 3, 1, WORKER_TYPE);
1916 aworker->implement_func=(custom_worker *)vis_button_new; 1916 aworker->implement_func=(custom_worker *)vis_button_new;
1917 aworker->input_types[0] = BUILTIN_TYPE_STRING; 1917 aworker->input_types[0] = BUILTIN_TYPE_STRING;
1918 aworker->input_types[1] = BUILTIN_TYPE_REAL; 1918 aworker->input_types[1] = BUILTIN_TYPE_REAL;
1919 aworker->input_types[2] = BUILTIN_TYPE_REAL; 1919 aworker->input_types[2] = BUILTIN_TYPE_REAL;
1920 //add_method(this_comp, aworker); 1920 //add_method(this_comp, aworker);
1927 //add_method(this_comp, aworker); 1927 //add_method(this_comp, aworker);
1928 1928
1929 current_method = 0; 1929 current_method = 0;
1930 create_company(prog, "Input Box", 2, 0, FALSE); 1930 create_company(prog, "Input Box", 2, 0, FALSE);
1931 1931
1932 aworker = create_worker(prog, "New@Input Box", 3, 1, WORKER_TYPE); 1932 aworker = create_worker(prog, "Input Box", 3, 1, WORKER_TYPE);
1933 aworker->implement_func=(custom_worker *)vis_inputbox_new; 1933 aworker->implement_func=(custom_worker *)vis_inputbox_new;
1934 aworker->input_types[0] = BUILTIN_TYPE_STRING; 1934 aworker->input_types[0] = BUILTIN_TYPE_STRING;
1935 aworker->input_types[1] = BUILTIN_TYPE_REAL; 1935 aworker->input_types[1] = BUILTIN_TYPE_REAL;
1936 aworker->input_types[2] = BUILTIN_TYPE_REAL; 1936 aworker->input_types[2] = BUILTIN_TYPE_REAL;
1937 //add_method(this_comp, aworker); 1937 //add_method(this_comp, aworker);
1943 //add_method(this_comp, aworker); 1943 //add_method(this_comp, aworker);
1944 1944
1945 #endif 1945 #endif
1946 #ifndef NO_NET 1946 #ifndef NO_NET
1947 this_comp = create_company(prog, "Net Client", 3, 0, FALSE); 1947 this_comp = create_company(prog, "Net Client", 3, 0, FALSE);
1948 aworker = create_worker(prog, "New@Net Client", 2, 1, WORKER_TYPE); 1948 aworker = create_worker(prog, "Net Client", 2, 1, WORKER_TYPE);
1949 aworker->implement_func =(custom_worker *)net_client_new; 1949 aworker->implement_func =(custom_worker *)net_client_new;
1950 aworker->input_types[0] = BUILTIN_TYPE_STRING; 1950 aworker->input_types[0] = BUILTIN_TYPE_STRING;
1951 aworker->input_types[1] = BUILTIN_TYPE_WHOLE; 1951 aworker->input_types[1] = BUILTIN_TYPE_WHOLE;
1952 1952
1953 aworker = create_worker(prog, "Put String@Net Client", 2, 2, WORKER_TYPE); 1953 aworker = create_worker(prog, "Put String@Net Client", 2, 2, WORKER_TYPE);
1983 1983
1984 create_company(prog, "Global Store", 0, 0, FALSE); 1984 create_company(prog, "Global Store", 0, 0, FALSE);
1985 1985
1986 create_company(prog, "Program", 5, 0, FALSE); 1986 create_company(prog, "Program", 5, 0, FALSE);
1987 1987
1988 aworker = create_worker(prog, "New@Program", 0, 1, WORKER_TYPE); 1988 aworker = create_worker(prog, "Program", 0, 1, WORKER_TYPE);
1989 aworker->implement_func = (custom_worker *)vis_program_new; 1989 aworker->implement_func = (custom_worker *)vis_program_new;
1990 1990
1991 aworker = create_worker(prog, "New Worker@Program", 2, 2, WORKER_TYPE); 1991 aworker = create_worker(prog, "New Worker@Program", 2, 2, WORKER_TYPE);
1992 aworker->implement_func = (custom_worker *)vis_program_new_worker; 1992 aworker->implement_func = (custom_worker *)vis_program_new_worker;
1993 aworker->input_types[0] = BUILTIN_TYPE_PROGRAM; 1993 aworker->input_types[0] = BUILTIN_TYPE_PROGRAM;
2014 2014
2015 #ifdef GUI_LIB 2015 #ifdef GUI_LIB
2016 #ifdef SYLLABLE 2016 #ifdef SYLLABLE
2017 create_company(prog, "Custom Widget", 2, 0, FALSE); 2017 create_company(prog, "Custom Widget", 2, 0, FALSE);
2018 2018
2019 aworker = create_worker(prog, "New@Custom Widget", 3, 1, WORKER_TYPE); 2019 aworker = create_worker(prog, "Custom Widget", 3, 1, WORKER_TYPE);
2020 aworker->implement_func=(custom_worker *)vis_customwidget_new; 2020 aworker->implement_func=(custom_worker *)vis_customwidget_new;
2021 aworker->input_types[0] = BUILTIN_TYPE_STRING; 2021 aworker->input_types[0] = BUILTIN_TYPE_STRING;
2022 aworker->input_types[1] = BUILTIN_TYPE_REAL; 2022 aworker->input_types[1] = BUILTIN_TYPE_REAL;
2023 aworker->input_types[2] = BUILTIN_TYPE_REAL; 2023 aworker->input_types[2] = BUILTIN_TYPE_REAL;
2024 //add_method(this_comp, aworker); 2024 //add_method(this_comp, aworker);
2093 2093
2094 #endif 2094 #endif
2095 #endif 2095 #endif
2096 create_company(prog, "Buffer", 7, 0, FALSE); 2096 create_company(prog, "Buffer", 7, 0, FALSE);
2097 2097
2098 aworker = create_worker(prog, "New@Buffer", 1, 1, WORKER_TYPE); 2098 aworker = create_worker(prog, "Buffer", 1, 1, WORKER_TYPE);
2099 aworker->implement_func=(custom_worker *)vis_buffer_new; 2099 aworker->implement_func=(custom_worker *)vis_buffer_new;
2100 aworker->input_types[0] = BUILTIN_TYPE_WHOLE; 2100 aworker->input_types[0] = BUILTIN_TYPE_WHOLE;
2101 2101
2102 aworker = create_worker(prog, "Lock@Buffer", 1, 1, WORKER_TYPE); 2102 aworker = create_worker(prog, "Lock@Buffer", 1, 1, WORKER_TYPE);
2103 aworker->implement_func=(custom_worker *)vis_buffer_lock; 2103 aworker->implement_func=(custom_worker *)vis_buffer_lock;
2149 aworker->input_types[1] = BUILTIN_TYPE_WHOLE; 2149 aworker->input_types[1] = BUILTIN_TYPE_WHOLE;
2150 #endif //SEGA 2150 #endif //SEGA
2151 2151
2152 create_company(prog, "Blueprint", 4, 0, FALSE); 2152 create_company(prog, "Blueprint", 4, 0, FALSE);
2153 2153
2154 aworker = create_worker(prog, "New@Blueprint", 1, 1, WORKER_TYPE); 2154 aworker = create_worker(prog, "Blueprint", 1, 1, WORKER_TYPE);
2155 aworker->implement_func=(custom_worker *)vis_blueprint_new; 2155 aworker->implement_func=(custom_worker *)vis_blueprint_new;
2156 aworker->input_types[0] = BUILTIN_TYPE_STRING; 2156 aworker->input_types[0] = BUILTIN_TYPE_STRING;
2157 2157
2158 aworker = create_worker(prog, "Add Field@Blueprint", 3, 1, WORKER_TYPE); 2158 aworker = create_worker(prog, "Add Field@Blueprint", 3, 1, WORKER_TYPE);
2159 aworker->implement_func=(custom_worker *)vis_blueprint_addfield; 2159 aworker->implement_func=(custom_worker *)vis_blueprint_addfield;
2191 2191
2192 #ifdef GUI_LIB 2192 #ifdef GUI_LIB
2193 #ifdef SYLLABLE 2193 #ifdef SYLLABLE
2194 create_company(prog, "Checkbox", 2, 0, FALSE); 2194 create_company(prog, "Checkbox", 2, 0, FALSE);
2195 2195
2196 aworker = create_worker(prog, "New@Checkbox", 4, 1, WORKER_TYPE); 2196 aworker = create_worker(prog, "Checkbox", 4, 1, WORKER_TYPE);
2197 aworker->implement_func=(custom_worker *)vis_checkbox_new; 2197 aworker->implement_func=(custom_worker *)vis_checkbox_new;
2198 aworker->input_types[0] = BUILTIN_TYPE_STRING; 2198 aworker->input_types[0] = BUILTIN_TYPE_STRING;
2199 aworker->input_types[1] = BUILTIN_TYPE_REAL; 2199 aworker->input_types[1] = BUILTIN_TYPE_REAL;
2200 aworker->input_types[2] = BUILTIN_TYPE_REAL; 2200 aworker->input_types[2] = BUILTIN_TYPE_REAL;
2201 aworker->input_types[3] = BUILTIN_TYPE_YESNO; 2201 aworker->input_types[3] = BUILTIN_TYPE_YESNO;
2206 aworker->input_types[1] = BUILTIN_TYPE_STRING; 2206 aworker->input_types[1] = BUILTIN_TYPE_STRING;
2207 aworker->input_types[2] = BUILTIN_TYPE_WORKER; 2207 aworker->input_types[2] = BUILTIN_TYPE_WORKER;
2208 2208
2209 create_company(prog, "Dropdown", 4, 0, FALSE); 2209 create_company(prog, "Dropdown", 4, 0, FALSE);
2210 2210
2211 aworker = create_worker(prog, "New@Dropdown", 3, 1, WORKER_TYPE); 2211 aworker = create_worker(prog, "Dropdown", 3, 1, WORKER_TYPE);
2212 aworker->implement_func=(custom_worker *)vis_dropdown_new; 2212 aworker->implement_func=(custom_worker *)vis_dropdown_new;
2213 aworker->input_types[0] = BUILTIN_TYPE_LIST; 2213 aworker->input_types[0] = BUILTIN_TYPE_LIST;
2214 aworker->input_types[1] = BUILTIN_TYPE_REAL; 2214 aworker->input_types[1] = BUILTIN_TYPE_REAL;
2215 aworker->input_types[2] = BUILTIN_TYPE_REAL; 2215 aworker->input_types[2] = BUILTIN_TYPE_REAL;
2216 2216
3071 if((process_def->type & TYPE_MASK) == MAGIC_TYPE) 3071 if((process_def->type & TYPE_MASK) == MAGIC_TYPE)
3072 { 3072 {
3073 DEBUGPRINTF( "Magic method: %s\n", process_def->name); 3073 DEBUGPRINTF( "Magic method: %s\n", process_def->name);
3074 if(!params || !params[0]) 3074 if(!params || !params[0])
3075 { 3075 {
3076 ERRORPRINTF("Error: null first parmeter or null parameter array for worker %s\n", process_def->name); 3076 ERRORPRINTF("Error: null first parmeter or null parameter array for worker %s, params: %X, params[0]: %X\n", process_def->name, params, params[0]);
3077 print_stack_trace(worker_entry.instance); 3077 print_stack_trace(worker_entry.instance);
3078 execute_active = FALSE; 3078 execute_active = FALSE;
3079 return -1; 3079 return -1;
3080 } 3080 }
3081 VIS_EnterCriticalSection(parent_def->implement_func->workerlist[worker_entry.worker_num].lock); 3081 VIS_EnterCriticalSection(parent_def->implement_func->workerlist[worker_entry.worker_num].lock);