file       ylog.include.bb2
statement  ylog_fast                                          {text.s}
statement  ylog_close                                        {}
statement  ylog_open                                         {@filename.s}
statement  ylog_set                                          {filename.s}
statement  ylog                                               {text.s}
file       xlog.include.bb2
statement  xlog_fast                                          {text.s}
statement  xlog_close                                        {}
statement  xlog_open                                         {@filename.s}
statement  xlog_set                                          {filename.s}
statement  xlog                                               {text.s}
file       window.include.bb2
statement  win_setclip                                        {win.l,clip_x1.l,clip_y1.l,clip_x2.l,clip_y2.l}
statement  win_removeclip                                     {win.l}
function   win_cache_write                                    {dos.l}
function   win_cache_read                                     {dos.l,maxlength.l}
statement  win_lock                                           {win.l}
statement  win_unlock                                         {win.l}
statement  win_lock_all                                       {@exceptwin.l}
statement  win_unlock_all                                     {}
function   win_smartisopen                                    {wintyp.l,id_data.l}
function   win_getactive                                      {}
function   win_lastfocus                                      {}
function   win_isopen                                         {win.l}
statement  win_close                                          {win.l}
statement  win_smartclose                                     {wintyp.l,id_data.l}
statement  win_closeall                                       {}
function   win_findcache                                      {wintyp.l,id_data.l}
statement  win_flushcache                                     {}
statement  win_flushcache_win                                 {wintyp.l,@id_data.l}
function   win_init                                           {wintyp.l,id_data.l,title.s,@nocache.l}
statement  win_setsize                                        {win.l,x.l,y.l,xs.l,ys.l}
statement  win_setdragbutton                                  {win.l,x.l,y.l,xs.l,ys.l}
statement  win_setsizebutton                                  {win.l,xs.l,ys.l}
statement  win_setsize_soft                                   {win.l,x.l,y.l,xs.l,ys.l}
statement  win_setminimum                                     {win.l,xs.l,ys.l}
statement  win_setmaximum                                     {win.l,xs.l,ys.l}
statement  win_setexclusive                                   {win.l,exclusive.w}
statement  win_setflag                                        {win.l,flag.l}
statement  win_resetflag                                      {win.l,flag.l}
statement  win_setmenu                                        {win.l,menu.l}
statement  win_setgadgets                                     {win.l,gadgets.l}
statement  win_tst                                            {win.l}
statement  win_open                                           {win.l,@active.l}
statement  win_tofront                                        {win.l}
statement  win_attachgt                                      {win.l}
statement  win_getdefs                                        {}
statement  win_setuserdata                                   {win.l,user_data.l}
function   win_getuserdata                                   {win.l}
function   win_getid                                          {win.l}
function   win_ixs                                            {win.l}
function   win_iys                                            {win.l}
function   win_typ                                            {win.l}
file       vvblank.include.bb2
statement  vvblank_free                                       {}
statement  vvblank_resetsync                                  {}
function   vvblank_set                                        {hz.l}
statement  vvblank_wait                                       {@vcycles.l}
statement  vvblank_wait_sync                                  {@vcycles.l}
statement  vvblank_send                                       {@vcycles.l}
file       undo.include.bb2
statement  undo_set                                           {max_mem.l,max_disk.l,temp.s}
statement  undo_temp_free                                    {}
function   undo_collect_open                                 {*undo.undodat}
statement  undo_collect_close                                {*undo.undodat}
statement  undo_c_destroy                                     {*undo.undodat,*ci.containerindex}
statement  undo_hardflush                                     {*undo.undodat}
statement  undo_check_steps                                   {*undo.undodat}
statement  undo_check_disk                                    {*undo.undodat,bdisk.l}
function   undo_c_todisk                                      {*undo.undodat,*ci.containerindex}
statement  undo_check_mem                                     {*undo.undodat,bmem.l}
function   undo_c_add                                         {*undo.undodat,*ci.containerindex,typid.l,@dat_ptr.l,@dat_blength.l,@user_data1.l,@user_data2.l}
function   undo_c_addstep                                     {*undo.undodat,*ci.containerindex,@stepid.l}
statement  undo_remove                                        {*undo.undodat}
statement  undo_free_all                                     {}
function   undo_create                                        {@maxsteps.l,@kickit.l}
function   undo_nextindex                                     {*undo.undodat}
statement  undo_start                                         {*undo.undodat,@stepid.l}
statement  undo_try                                           {*undo.undodat,@stepid.l}
statement  undo_store                                         {*undo.undodat,typid.l,@dat_ptr.l,@dat_blength.l,@user_data1.l,@user_data2.l}  ; retten
function   undo_next                                          {*undo.undodat}   ; private
statement  undo_stop                                          {*undo.undodat}
function   undo_changes                                       {*undo.undodat}
statement  undo_saved                                         {*undo.undodat}
function   undo_global_changes                                {}
statement  undo_global_saved                                  {}
function   undo_typid                                         {*undo.undodat}
function   undo_ptr                                           {*undo.undodat}
function   undo_blength                                       {*undo.undodat}
function   undo_user_data1                                    {*undo.undodat}
function   undo_user_data2                                    {*undo.undodat}
function   undo_copy                                          {*undo.undodat,dest_ptr.l,max_blength.l}
statement  drawstat                                          {*undo.undodat,*undo2.undodat}
file       tui.include.bb2
function   textlen                                            {a.s,@font.l,@win.l} ; ------------------------------------------------------------------
function   tui_loadfonts                                      {font_name.s,font_size.l,font_name_small.s,font_size_small.l,font_big.s,font_size_big.l}
statement  tui_setspacetuning                                {button_increase.l,space_decrease.l}
statement  tui_setsmart                                       {smart.w}
statement  tui_setgadgethelp                                 {stat.l}
function   tui_init                                           {font_name.s,font_size.l,font_name_small.s,font_size_small.l,font_big.s,font_size_big.l}
function   tui_clone_init                                     {font_name.s,font_size.l,font_name_small.s,font_size_small.l,penarray_ptr.l}
statement  tui_setspacing                                     {value.l}
function   tui_sigflag_old                                    {}
function   tui_sigflag                                        {}
statement  tui_sigself                                        {win.l}
statement  tui_setslidermode                                  {delaymode.w,gainmode.w}
statement  tui_setdeftags                                     {deftags.l}
statement  invbox                                            {win.l,x1.l,y1.l,x2.l,y2.l}
statement  drawgframe                                        {x.l,y.l,xs.l,ys.l}
statement  drawbframe                                        {x.l,y.l,xs.l,ys.l}
statement  drawiframe                                        {x.l,y.l,xs.l,ys.l}
statement  drawcolframe                                      {x.l,y.l,xs.l,ys.l,col.l}
statement  drawhbox                                          {win.l,tuiobj.l,col.l}
statement  drawbgbox                                         {win.l,tuiobj.l}
statement  drawibox                                          {win.l,tuiobj.l}
statement  drawbbox                                          {win.l,tuiobj.l}
statement  drawhstripe                                       {x.l,y.l,xs.l}
statement  drawvstripe                                       {x.l,y.l,ys.l}
statement  drawbox                                            {x.l,y.l,xs.l,ys.l,col.l}
statement  drawbg                                             {x.l,y.l,xs.l,ys.l}
statement  drawbg2                                            {x1.l,y1.l,x2.l,y2.l}
statement  tui_setpattern                                     {image.l}
statement  image_blitbackfill                                 {image.l,x.l,y.l,x2.l,y2.l,xoffset.l,yoffset.l,destbitmap_ptr.l}
statement  image_blitbackfill                                 {image.l,x.l,y.l,x2.l,y2.l,xoffset.l,yoffset.l,destbitmap_ptr.l}
statement  tui_setbfhook                                      {*bf.Hook,*bfbd.Hook}
statement  tui_install_bfhook                                 {win.l}
function   tui_stringcrop                                     {win.l,string.s,pixlen.l}
function   tuidat_abs2rel_x                                   {win.l,view.l,x.l}
function   tuidat_abs2rel_y                                   {win.l,view.l,y.l}
statement  tui_vanillakey_notify                              {key.w,notify.l}
statement  tui_rawkey_notify                                  {key.w,notify.l}
statement  tui_intuiticknotify                                {notify.l}
statement  tui_activenotify                                   {notify.l}
statement  tui_inactivenotify                                 {notify.l}
statement  tui_prefsnotify                                    {notify.l}
statement  tui_initmenu                                       {}
function   tui_menucheck                                      {win.l,menu_title.l,menu_item.l}
function   tui_menucheck_sub                                  {win.l,menu_title.l,menu_item.l,menu_sub.l}
statement  tui_menuupdate_sub                                 {win.l,menu_title.l,menu_item.l,menu_sub.l,@flip.l}
statement  tui_menuupdate                                     {win.l,menu_title.l,menu_item.l,@flip.l}
statement  tui_menutitle                                      {title.s}
statement  tui_menuitem                                       {text.s,shortcut.s,flags.w,notify.l,exclude.l}
statement  tui_menubar                                        {}
statement  tui_menusubitem                                    {text.s,shortcut.s,flags.w,notify.l,exclude.l}
statement  tui_menusubbar                                     {}
statement  tui_menutoggle_sub                                 {win.l,menu_title.l,menu_item.l,menu_sub.l,bool.w}
statement  tui_menutoggle_item                                {win.l,menu_title.l,menu_item.l,bool.w}
statement  tui_menutoggle_title                               {win.l,menu_title.l,bool.w}
statement  tui_menutoggle                                     {win.l,bool.w}
statement  tui_menusetcheck_sub                               {win.l,menu_title.l,menu_item.l,menu_sub.l,value.l}
statement  tui_menusetcheck                                   {win.l,menu_title.l,menu_item.l,value.l}
statement  tui_menumirror                                     {ptr.l}
statement  tui_levelmeter_refresh                             {win.l,tuiobj.l,left.l,right.l}
statement  tui_levelmeter_draw                                {win.l,tuiobj.l}
statement  tui_print                                          {win.l,x.l,y.l,xs.l,text.s,tuitags.l}
statement  tui_listview_drawcolumn                            {win.l,tuiobj.l,a.s,x.l,y.l}
statement  tui_listview_draw_content                          {win.l,tuiobj.l,pos1.l,pos2.l,@norefresh.l}
statement  tui_listview_draw                                  {win.l,tuiobj.l}
statement  tui_listview_scrollto                              {win.l,tuiobj.l,newpos.l}
statement  tui_statusbar_draw                                 {win.l,tuiobj.l,newv.l,oldv.l}
statement  tui_setstatusbar                                   {win.l,tuiobj.l,value.l} ; ---------------------------------------
statement  tui_initstatusbar                                  {win.l,tuiobj.l,resolution.l,initvalue.l} ; ------------------
statement  tui_initscroller                                   {win.l,tuiobj.l,visible.l,total.l,init.l}
statement  tui_refreshregion                                  {win.l,tuiobj.l,notify.l}
statement  tui_scrollview                                     {win.l,tuiobj.l,dx.l,dy.l}
function   tui_sliderlevel2string                             {win.l,tuiobj.l,value.l}
function   tui_page_click                                     {win.l,tuiobj.l,mx.l,my.l}
statement  tui_closebubble                                    {}
statement  tui_setfocus                                       {win.l,tuiobj.l}
statement  tui_envelope_drawknob                             {win.l,x.l,y.l}
statement  tui_envelope_draw                                 {win.l,tuiobj.l}
function   tui_envelope_hit                                  {win.l,tuiobj.l,mx.l,my.l}
statement  tui_envelope_drag                                 {win.l,tuiobj.l,mx.l,my.l}
statement  tui_draw                                           {win.l,tuiobj.l,@mode.l} ; mode=1 value redraw , mode=-1 default; 0 = refresh
statement  tui_hide                                          {win.l,tuiobj.l}
function   tui_visible                                       {win.l,tuiobj.l}
statement  tui_show                                          {win.l,tuiobj.l}
statement  tui_gtdisable                                      {win.l,tuiobj.l}
statement  tui_disable                                        {win.l,tuiobj.l}
statement  tui_enable                                         {win.l,tuiobj.l}
statement  tui_dolayout{win.l,tuiobj.l,xoff.l,yoff.l,xs.l,ys  ;--------------------------------------------
statement  tui_addhgroup                                      {tuiobj.l,modulo.l,@child1.l,@child2.l,@child3.l,@child4.l}
statement  tui_setflag                                       {tuiobj.l,flag.l}
statement  tui_settag                                         {tuiobj.l,tag.l}
statement  tui_resettag                                       {tuiobj.l,tag.l}
statement  tui_setsize                                        {tuiobj.l,xs.l,ys.l}
statement  tui_frametitle                                     {tuiobj.l,title.s}
statement  tui_view_trim                                      {tuiobj.l,tx.w,ty.w,txs.w,tys.w}
statement  tui_view                                           {tuiobj.l,ttags.l,color.l,@notify.l}
statement  tui_texteditor                                     {tuiobj.l,ttags.l,ted_ptr.l,@ted_tags.l,@minwidth.l,@minrows.l}
function   tui_ted_ptr                                       {win.l,tuiobj.l}
statement  tui_addvgroup                                      {tuiobj.l,modulo.l,@child1.l,@child2.l,@child3.l,@child4.l}
statement  tui_addpage                                        {tuiobj.l,defaultchild.l,@child1.l,@child2.l,@child3.l,@child4.l}
statement  tui_addmore                                        {win.l}
statement  tui_setswitches                                    {tuiobj.l,switch.w,@child1.w,@child2.w,@child3.w,@child4.w}
statement  tui_doswitches                                     {win.l}
statement  tui_copyword                                      {tuiobj.l,ptr.l}
statement  tui_copybyte                                      {tuiobj.l,ptr.l}
statement  tui_copylong                                      {tuiobj.l,ptr.l}
statement  tui_copystring                                    {tuiobj.l,ptr.l}
statement  tui_button                                        {tuiobj.l,text.s,notify.l}
statement  tui_statusbar                                      {tuiobj.l,resolution.l,value.l}
statement  tui_levelmeter                                     {tuiobj.l,allleds.l,yellowleds.l,stereo.w}
function   tui_env_gain                                      {win.l,tuiobj.l,pos.l}
function   tui_env_time                                      {win.l,tuiobj.l,pos.l}
statement  tui_envelope                                       {tuiobj.l,flags.l}
statement  tui_mux                                            {tuiobj.l,options.s,value.l}
statement  tui_label                                         {tuiobj.l,text.s,ttags.l}
statement  tui_cycle                                         {tuiobj.l,text.s,value.l,@notify.l}
statement  tui_string                                        {tuiobj.l,maxchars.l,text.s}
statement  tui_numstring                                      {tuiobj.l,minvalue.l,maxvalue.l,value.l}
statement  tui_space                                         {tuiobj.l,xs.l,ys.l,@ttags.l}
statement  tui_shape                                          {tuiobj.l,bshape.l}
statement  tui_image                                          {tuiobj.l,@visible.l,@image1.l,@image2.l,@image3.l,@image4.l}
statement  tui_image_add                                      {tuiobj.l,image1.l,@image2.l,@image3.l,@image4.l}
statement  tui_image_addfile                                  {tuiobj.l,filename.s}
statement  tui_imagegad                                       {tuiobj.l,image1.l,image2.l,status.l,notify.l}
statement  tui_hslider                                        {tuiobj.l,minv.l,maxv.l,formatstring.s,init.l}
statement  tui_stepsize                                       {tuiobj.l,stepsize.l}
statement  tui_hscroller                                      {tuiobj.l,visible.l,total.l,init.l,arrows.l}
statement  tui_vscroller                                      {tuiobj.l,visible.l,total.l,init.l,arrows.l}
statement  tui_sliderlevel                                    {tuiobj.l,slidertyp.l}
statement  tui_vslider                                        {tuiobj.l,minv.l,maxv.l,formatstring.s,init.l}
statement  tui_shapegad                                       {tuiobj.l,shap1.l,shap2.l,status.l,notify.l}
statement  tui_checkbox                                      {tuiobj.l,status.l}
statement  tui_listview                                       {tuiobj.l,notify.l,@ttags.l}
statement  tui_multilist                                      {tuiobj.l,notify.l,@node.l}
statement  tui_multilist_path                                 {tuiobj.l,notify.l,path.s,name.s,pattern.s,@makeroot.l}
statement  tui_multilist_updsliders                           {win.l,tuiobj.l}
statement  tui_multilist_setpath                              {win.l,tuiobj.l,newpath.s,name.s,pattern.s,@makeroot.l}
statement  tui_multilist_replace                              {win.l,tuiobj.l,node.l,@destroy.l}
statement  tui_notify                                         {tuiobj.l,notifydata.l}
statement  tui_connect                                        {view.l,scroller.l}
statement  tui_listview_show                                  {win.l,tuiobj.l,pos.l}
statement  tui_listview_update                                {win.l,tuiobj.l}
statement  tui_update_strings                                {win.l}
statement  tui_addwoffsets                                    {win.l}
statement  tui_addwoffsets_pre                                {win.l}
statement  tui_copyvalue                                      {win.l,tuiobj.l}
statement  tui_freegtlist                                     {win.l}
function   tui_makesize                                       {win.l,tuiobj.l} ; ------------------------------------------------
statement  tui_resetlayout                                    {win.l}
statement  tui_rethink                                        {win.l,@tuiobj.l}
function   tui_listview_setstatus                             {win.l,tuiobj.l,dpos.l,status.l,@status2.l}
function   tui_listview_getstatus                             {win.l,tuiobj.l,dpos.l}
statement  tui_setvalue                                       {win.l,tuiobj.l,value.l}
statement  tui_setstring                                      {win.l,tuiobj.l,string.s}
statement  tui_setstring_rd                                   {win.l,tuiobj.l,string.s}
statement  tui_smartsetvalue                                  {wintyp.l,id_data.l,tuiobj.l,value.l}
statement  tui_smartsetstring                                 {wintyp.l,id_data.l,tuiobj.l,string.s}
statement  tui_smartrefresh                                   {wintyp.l,id_data.l,tuiobj.l}
statement  tui_view_setsize                                   {win.l,tuiobj.l,vxs.l,vys.l,xfactor.l,yfactor.l}
statement  tui_view_setsize_nup                               {win.l,tuiobj.l,vxs.l,vys.l,xfactor.l,yfactor.l}
statement  tui_view_setsize_pos_nup                           {win.l,tuiobj.l,vxs.l,vys.l,xpos.l,ypos.l}
statement  tui_view_setsize_pos                               {win.l,tuiobj.l,vxs.l,vys.l,xpos.l,ypos.l}
statement  tui_listview_remove_quiet                          {win.l,tuiobj.l,pos.l}
statement  tui_listview_remove                                {win.l,tuiobj.l,pos.l}
statement  tui_listview_clear                                 {win.l,tuiobj.l}
statement  tui_listview_smartremove                           {win.l,tuiobj.l,user_data.l,@rd.l}
statement  tui_listview_smartremovename                       {win.l,tuiobj.l,name.s}
statement  tui_listview_add_quiet                             {win.l,tuiobj.l,text.s,user_data.l,ttags.l,pos.l}
statement  tui_listview_add                                   {win.l,tuiobj.l,text.s,user_data.l,ttags.l,pos.l}
statement  tui_listview_add_sortstring                        {win.l,tuiobj.l,text.s,user_data.l,ttags.l}
function   tui_listview_numitems                             {win.l,tuiobj.l}
statement  tui_listview_smartchange                           {win.l,tuiobj.l,user_data.l,newtitle.s,@flags.l}
statement  tui_listview_smartset_tags                         {win.l,tuiobj.l,user_data.l,ttags.l}
statement  tui_listview_smartset                              {win.l,tuiobj.l,user_data.l}
function   tui_listview_get_user_data                         {win.l,tuiobj.l,@pos.l}
function   tui_listview_getpos                                {win.l,tuiobj.l,user_data.l}
function   tui_listview_getstring                             {win.l,tuiobj.l,pos.l}
function   tui_listview_click                                {win.l,tuiobj.l,mx.l,my.l,qual.l,dbl.l}
statement  tui_setparent                                      {parent_obj.l}
function   tui_win_init                                       {wintyp.l,id_data.l,title.s,@cacheit.l}
statement  tui_win_open                                       {@active.l}
statement  tui_win_close                                      {win.l}
statement  tui_win_smartclose                                 {wintyp.l,id_data.l}
statement  tui_win_closeall                                   {}
statement  tui_resize                                         {win.l}
statement  tui_free                                           {}
statement  tui_getgad                                         {win.l,tuiobj.l,value.l,gadget.l}
statement  tui_domouseranging                                 {}
statement  tui_getclick                                       {n.l}
statement  tui_sethelp                                        {tuiobj.l,text.s}
statement  tui_openbubble                                     {text.s,x.l,y.l,ishelp.l}
function   tui_gethelpx                                       {win.l,tuiobj.l,mx.l,my.l}
function   tui_getobj                                         {win.l,tuiobj.l,mx.l,my.l}
statement  tui_view_setmouse                                  {win.l,tuiobj.l,mp.l}
statement  tui_forcenotify                                    {win.l,notify.l,@id_data.l,@tuiobj.l,@value.l,@string.s}
statement  tui_forcenotify_fast                               {win.l,notify.l,@id_data.l,@tuiobj.l,@value.l}
function   tuidat_value                                       {win.l,tuiobj.l}
function   tui_getnotify                                      {ev.l,dowait.w}
function   tui_write_windef                                   {filename.s}
function   tui_read_windef                                    {filename.s}
statement  tui_appnotify                                      {win.l,notify.l}
statement  tui_initapp                                        {appname.s,appico.s,appmenuname.s,popup_notify.l,icon_notify.l,showicon.l}
statement  tui_iconify                                        {}
statement  tui_popup                                          {}
statement  tui_rempage                                        {win.l,tuiobj.l,@child.l}
function   tui_newpage                                        {win.l,tuiobj.l,child.l}
function   tuidat_string                                      {win.l,tuiobj.l}
function   tuidat_x                                           {win.l,tuiobj.l}
function   tuidat_y                                           {win.l,tuiobj.l}
function   tuidat_xs                                          {win.l,tuiobj.l}
function   tuidat_ys                                          {win.l,tuiobj.l}
function   tuiev_mclick                                       {}
function   tuiev_dblclick                                     {}
function   tuiev_mpress                                       {}
function   tuiev_ranging                                      {}
function   tuiev_mbutton                                      {}
function   tuiev_mx                                           {}
function   tuiev_my                                           {}
function   tuiev_xs                                           {}
function   tuiev_ys                                           {}
function   tuiev_id_data                                      {}
function   tuiev_obj                                          {}
function   tuiev_win                                          {}
function   tuiev_menu_title                                   {}
function   tuiev_menu_item                                    {}
function   tuiev_menu_sub                                     {}
function   tuiev_string                                       {}
function   tuiev_value                                        {}
function   tui_controller                                     {ctrl.w}
statement  win_tuidemo                                        {}
file       ttfont.include.bb2
function   font_exist                                         {f$}
function   font_load                                          {fontname.s,ysize.l}
statement  font_setfont                                       {*rp.RastPort,font.l}
statement  font_text                                          {rp.l,str_ptr.l,@count.l}
function   font_textlength                                    {rp.l,str_ptr.l,count.l,@font.l}
function   font_size                                          {font.l}
statement  font_close                                         {font.l}
file       TKall.include.bb2
file       timer_gui.include.bb2
statement  timer_set                                          {@vfreq.f} ; freq in hz
statement  timer_abort                                        {}
function   timer_sigflag                                      {}
statement  timer_go                                           {}
function   timer_check                                        {}
statement  timer_close                                        {}
function   timer_open                                         {@vfreq.f,@device.s}
file       texteditor.include.bb2
macro      !line_use                                           ; {lpos}
macro      !line2_use                                          ; {lpos}
macro      !linex_use                                          ; {linename, lpos}
statement  ted_copymem                                        {sourceaddr.l,destaddr.l,blength.l}
statement  ted_lock                                           {*ted.tuited}
statement  ted_unlock                                         {*ted.tuited}
statement  ted_draw_stat                                      {*ted.tuited,text.s,@force.l}
function   ted_changed                                        {*ted.tuited}
macro      !ted_tokenengine                                    ; name, maxlibs, maxtokens
statement  ted_flushtokens_`1                                 {}
statement  ted_addtoken_`1                                    {tokenname.s,libnum.l,tokenid.l,help.s,@nocasesense.l}
function   ted_findtoken_`1                                   {*ted.tuited,tokenname.s,@nocasesense.l}
function   ted_tokenname_`1                                   {*ted.tuited,tid.l}
function   ted_tokenhelp_`1                                   {*ted.tuited,tid.l}
statement  ted_init_scroller                                  {*ted.tuited,win.l,tuiobj.l}
statement  ted_update_scroller                                {*ted.tuited,@upd.l}
statement  ted_attach_tuiobj                                  {*ted.tuited,win.l,tuiobj.l}
statement  ted_detach_tuiobj                                  {*ted.tuited}
statement  ted_setclip                                        {*ted.tuited}
statement  ted_remclip                                        {*ted.tuited}
function   ted_y2line                                         {*ted.tuited,y.l}
function   ted_x2pos_x                                        {*ted.tuited,lpos.l,x.l}
function   ted_line2y                                         {*ted.tuited,lpos.l}
function   ted_detokenize                                     {str_ptr.l,@clength.l}
function   ted_tokenlength                                    {*ted.tuited,str_ptr.l,@clength.l}
function   ted_pos2x                                          {*ted.tuited,lpos.l,cpos.l}
function   ted_pos2cw                                         {*ted.tuited,lpos.l,cpos.l}
function   ted_x2pos                                          {*ted.tuited,lpos.l,x.l}
macro      !parser_setpen                                      ; color
macro      !parser_changepen                                   ; color
function   ted_isnumber                                       {name.s}
statement  ted_do_html                                        {*ted.tuited,*tline.tline}
statement  ted_do_hex                                         {*ted.tuited,*tline.tline}
statement  ted_do_ab2                                         {*ted.tuited,*tline.tline}
function   ted_do_c                                           {*ted.tuited,*tline.tline,flags.l}
statement  ted_do_monkey                                      {*ted.tuited,*tline.tline}
statement  ted_line_settokencase                              {*ted.tuited}
statement  ted_tokenize                                       {*ted.tuited,lpos.l,@force.l}
statement  ted_settokencol                                    {*ted.tuited,token_pen.l,rgbcol.l}
statement  ted_blink                                          {*ted.tuited,@blink.l,@clip.l}
statement  ted_tokentext                                      {*ted.tuited,str_ptr.l,clength.l}
statement  ted_tokentext_boldx                                {*ted.tuited,str_ptr.l,clength.l}
statement  ted_tokentext_clip                                 {*ted.tuited,str_ptr.l,scpos.l,clength.l,marked.l}
statement  ted_tokentext_m                                    {*ted.tuited,str_ptr.l,clength.l}
statement  ted_draw_tokenline                                 {*ted.tuited,lpos.l,x.l,y.l,x2.l}
statement  ted_draw_rawline                                   {*ted.tuited,lpos.l,x.l,y.l,x2.l}
statement  ted_showbrackets                                  {*ted.tuited,@noclip.l}
statement  ted_draw                                           {*ted.tuited,@x1.l,@y1.l,@x2.l,@y2.l,@mode.l}
statement  ted_draw_line                                      {*ted.tuited,lpos.l}
statement  ted_hidebrackets                                  {*ted.tuited}
function   ted_search_closebracket                            {*ted.tuited,lpos.l,cpos.l,bo.b,bc.b}
function   ted_search_openbracket                             {*ted.tuited,lpos.l,cpos.l,bo.b,bc.b}
statement  ted_checkbrackets                                 {*ted.tuited}
statement  ted_scroll                                         {*ted.tuited,dx.l,dy.l,@upd.l}
statement  ted_free_text                                      {*ted.tuited}
statement  ted_flush                                          {*ted.tuited}
statement  ted_remove                                         {*ted.tuited}
statement  ted_setflags                                       {*ted.tuited,flags.l}
statement  ted_setfont                                        {*ted.tuited,fontname.s,fontsize.l}
statement  ted_cursorconfig                                   {*ted.tuited,blinkspeed.l,scroll_lines.l,scroll_xpix.l,tabsize.l}  ; 0 = off, 1 = fast, 3 = ok
statement  ted_setpath                                        {*ted.tuited,path.s,fil.s,pattern.s}
statement  ted_setfile                                        {*ted.tuited,filename.s}
function   ted_file                                           {*ted.tuited}
function   ted_title                                          {*ted.tuited}
function   ted_create                                         {fontname.s,fontsize.l,flags.l,blinkspeed.l,@undosteps.l}
statement  ted_show                                           {*ted.tuited,lpos.l,cpos.l}
statement  ted_setmarker                                      {*ted.tuited,@lpos1.l,@cpos1.l,@lpos2.l,@cpos2.l,@upd.l}
statement  ted_marker_show                                    {*ted.tuited}
statement  ted_cursor_show                                    {*ted.tuited}
statement  ted_setcursor                                      {*ted.tuited,lpos.l,cpos.l,@pixupd.l,@loose.l,@upd.l}
statement  ted_setrgb                                         {*ted.tuited,fg.l,bg.l,mfg.l,mbg.l,cfg.l,cbg.l}
statement  ted_drag                                           {*ted.tuited,mx.l,my.l}
statement  ted_cursor_move                                    {*ted.tuited,dx.l,dy.l,shift.l}
statement  ted_setcursor_xy                                   {*ted.tuited,x.l,y.l}
statement  ted_insert_line                                    {*ted.tuited,lpos.l,text.l,@clength.l}
statement  ted_delete_line                                    {*ted.tuited,lpos.l}
statement  ted_do_delete_line                                 {*ted.tuited}
statement  ted_insert                                         {*ted.tuited,lpos.l,cpos.l,text.l,@ilength.l}
statement  ted_delete                                         {*ted.tuited,lpos.l,cpos.l,elength.l}
function   ted_breakreturn                                    {*ted.tuited,lpos.l,cpos.l,@indent.l}
statement  ted_delete_marker                                  {*ted.tuited,@upd.l}
statement  ted_do_delete                                      {*ted.tuited}
statement  ted_do_selectall                                   {*ted.tuited}
function   ted_getmarker                                      {*ted.tuited}
statement  ted_copyclip                                       {*ted.tuited,@delflag.l}
statement     
statement  ted_do_copy                                        {*ted.tuited}
statement  ted_do_cut                                         {*ted.tuited}
statement  ted_search_set                                     {*ted.tuited,@lpos.l,@cpos.l}
statement  ted_search_setcursor                               {*ted.tuited}
function   ted_search                                         {*ted.tuited,text.s,@docase.l,@upd.l}
statement  ted_mclick                                         {*ted.tuited,mx.l,my.l,mb.l,dbl.l}
statement  ted_clonepath                                      {*ted1.tuited,*ted2.tuited}
function   ted_save_ascii                                     {*ted.tuited,filename.s,@upd.l,@ask.l,@sleep.l,@ascii.l}
function   ted_getstring                                      {*ted.tuited}
statement  ted_insert_string                                  {*ted.tuited,lpos.l,cpos.l,str_ptr.l,@blength.l,@upd.l}
statement  ted_do_paste                                       {*ted.tuited}
statement  ted_do_replace                                     {*ted.tuited,string.s}
function   ted_do_replace_all                                 {*ted.tuited,searchstring.s,replacestring.s,@docase.l}
statement  ted_do_undo                                        {*ted.tuited}
statement  ted_redraw_damaged                                {*ted.tuited}
statement  ted_vanilla_key                                    {*ted.tuited,key.l}
statement  ted_raw_key                                        {*ted.tuited,rkey.l,vkey.l,string.s}
statement  ted_putstring                                      {*ted.tuited,str_ptr.l,@blength.l}
function   ted_putstring_bb2                                  {*ted.tuited,str_ptr.l,@blength.l}
statement  ted_settokenizing                                  {*ted.tuited,tokenizing.l}
function   ted_load_ascii                                     {*ted.tuited,filename.s,@setpath.l,@upd.l}
function   ted_load_hex                                       {*ted.tuited,filename.s,@setpath.l,@upd.l}
file       tcp.include.bb2
statement  tcp_error                                          {text.s}
statement  tcp_socket_listen                                  {socket.l}
statement  tcp_socket_shut                                    {socket.l}
statement  tcp_socket_remove                                  {socket.l}
statement  tcp_quiet                                          {onoff.l}
statement  tcp_close                                          {}
function   tcp_open                                           {}
statement  tcp_packet_err                                     {socket.l,errtext.s}
function   tcp_socket_create                                  {socket.l,blocking.l,timeout.l}
function   tcp_socket_try                                     {socket.l,host.s,port.l,timeout.l}
function   tcp_socket_host                                    {socket.l}
function   tcp_socket_port                                    {socket.l}
function   tcp_socket_status                                  {socket.l}
function   tcp_socket_isconnected                             {socket.l}
function   tcp_socket_isused                                  {socket.l}
function   tcp_socket_done                                    {socket.l}
statement  tcp_packet_new                                     {socket.l}
statement  tcp_packet_add                                     {socket.l,dat.s}
statement  tcp_packet_addn                                    {socket.l,dat.s}
statement  tcp_packet_addnn                                   {socket.l,dat.s}
statement  tcp_packet_send                                    {socket.l}
statement  tcp_packet_sendmem                                 {socket.l,ptr.l,blength.l}
statement  tcp_packet_sendn                                   {socket.l,dat.s}
function   tcp_check                                          {@getdata.l,@timeout.l}
function   tcp_received_socket                                {}
function   tcp_received_body                                  {}
function   tcp_received_size                                  {}
function   tcp_received_state                                 {}
function   tcp_socket_connectx                                {socket.l,host.s,port.l}
file       strptr.include.bb2
statement  str_free                                           {ntptr.l}
statement  str_writeptr                                      {ntptr.l,textptr.l}
statement  str_write                                         {ntptr.l,text.s}
function   str_read                                           {ntptr.l}
file       sf2.include.bb2
statement  sf_close                                           {}
function   sf_open                                            {filename.s}
function   sf_tst                                             {filename.s}
function   sf_name                                            {}
function   sf_numsamps                                        {}
function   sf_getname                                         {ptr.l,maxlength.l}
function   sf_sample_name                                     {}
function   sf_nextsample                                      {}
function   sf_sample_blength                                  {}
function   sf_sample_flength                                  {}
function   sf_sample_loop_start                               {}
function   sf_sample_loop_start_frac                          {}
function   sf_sample_loop                                     {}
function   sf_sample_loop_end                                 {}
function   sf_sample_loop_end_frac                            {}
function   sf_sample_rootkey                                  {}
function   sf_sample_lowkey                                   {}
function   sf_sample_highkey                                  {}
function   sf_sample_fine                                     {}
function   sf_sample_rate                                     {}
function   sf_sample_gain                                     {}
function   sf_sample_pan                                      {}
function   sf_sample_readdata                                 {ptr.l,maxbytes.l}
file       serial_device.include.bb2
statement  serial_close                                       {mp.w}
statement  serial_close_all                                   {}
statement  serial_read                                        {mp.w,ptr.l,blength.l}
function   serial_open                                        {mp.w,devicename.s,unit.l,@baud.l}
statement  serial_write                                       {mp.w,ptr.l,blength.l}     ; just sends the given data, memory is not copied
statement  serial_write_c                                     {mp.w,ptr.l,blength.l}    ; copies the given data and sends it after
function   serial_receive                                     {mp.w}
function   serial_received_length                             {mp.w}
function   serial_received_ptr                                {mp.w}
function   serial_sigflag                                     {}
file       semaphore.include.bb2
function   sema_create                                        {name.s}
statement  sema_remove                                        {}
statement  sema_obtain                                        {}
statement  sema_shared                                        {}
statement  sema_release                                       {}
function   sema_find                                          {name.s}
file       secureload_font.include.bb2
function   load_exist                                         {f$}
function   load_font                                          {font.l,fontname.s,size.w}
file       screen.include.bb2
statement  screen_setbias                                     {r.l,g.l,b.l}
function   screen_getpen                                      {r.l,g.l,b.l}
function   screen_getpenrgb                                   {color.l}
statement  screen_releasepen                                  {pen.l}
statement  screen_setpen                                      {n.l,r.l,g.l,b.l}
statement  screen_lockpen                                     {n.l}
function   requ_screen                                        {title.s,mask.l}
function   screen_ask                                         {modeid.l,scr_width.l,scr_height.l,scr_depth.w,scr_overscan.l,scr_ascroll.l}
statement  screen_close                                       {}
statement  screen_setpubname                                  {pubname.s}
function   screen_getfont                                     {f.w}
function   screen_open                                        {title.s,@modeid.l,@scr_width.l,@scr_height.l,@scr_depth.l,@visible.l} ; -1=WB;-2=cloneWB;0=ASL
function   screen_width                                       {}
function   screen_height                                      {}
function   screen_depth                                       {}
function   screen_id                                          {}
function   asl_screen_width                                   {}
function   asl_screen_height                                  {}
function   asl_screen_depth                                   {}
function   asl_screen_id                                      {}
function   asl_screen_overscan                                {}
file       rawkey_kybdev.include.bb2
statement  rawkey_free                                        {}
function   rawkey_init                                        {}
file       rawkey.include.bb2
statement  rawkey_free                                        {}
function   rawkey_init                                        {}
file       popmail.include.bb2
function   popmail_number                                     {socket.l}
function   popmail_id                                         {socket.l}
function   popmail_crop                                       {socket.l}
function   popmail_ok                                         {body.s}
function   popmail_open                                       {socket.l,host.s,user.s,password.s}
function   popmail_next                                       {socket.l,filename.s}
statement  popmail_delete                                     {socket.l,number.l}
statement  popmail_close                                      {socket.l}
file       png.include.bb2
function   png_findchunk                                      {dos.l,chunk.l,@pos.l,@blength.l,@immediate.l}
statement  png_close                                         {}
function   png_open                                          {filename.s}
function   png_unfilter                                      {sourceaddr.l,destaddr.l,blength.l}
function   png_alpha_read                                    {}
statement  png_alpha_decode                                  {destbuffer.l,awidth.l,aheight.l}
file       plugin_newtypes.include.bb2
file       plugin_mixer.include.bb2
function   _samps2ticks                                       {timeindex_audio.l}
function   _ticks2samps                                      {timeindex_midi.l}
statement  mixer_buffer_flush                                 {}
statement  mixer_free                                         {}
function   mixer_makeform                                     {mb.l,channels.l,bits.l,used_bits.l,factor.l}
function   mixer_init                                         {portptr.l,numbuff.l,buffersize.l,@channels.l,@bits.l,@used_bits.l,@factor.l}
function   mixer_nextbuffer                                   {}
function   mixer_nextbuffer_ptr                               {mc.l}
function   mixer_nextbuffer_ptr_clr                           {mc.l}
function   mixer_nextbuffer_dirty                             {mc.l}
function   mixer_nextbuffer_bsize                             {}
function   mixer_nextbuffer_timeindex                         {}
function   mixer_nextbuffer_framesize                         {}
function   mixer_nextbuffer_timeindex_midi                    {}
function   mixer_nextbuffer_fsize                             {}
statement  mixer_nextbuffer_done                              {}
statement  mixer_settimeindex                                 {timeindex_audio.l}
statement  mixer_settimeindex_midi                            {timeindex_midi.l}
file       plugin_client.include.bb2
statement  pc_logout                                          {}
statement  pc_newmessage                                      {}
statement  pc_addarg                                          {arg.s}
statement  pc_addquoted                                       {arg.s}
statement  pc_addint                                          {value.l}
function   pc_send                                            {}
function   pc_sendmessage                                     {message.s}
statement  pc_shutdown                                        {}
function   pc_check                                           {}
function   pc_waitforcomm                                     {command.s,@timeout.l}
function   pc_wait                                            {}
function   pc_waittime                                        {timeout.l}
function   pc_nextarg                                         {}
function   pc_command                                         {}
function   pc_id                                              {}
function   pc_login                                           {}
function   pc_getid                                           {path.s}
function   pc_start                                           {name.s,client.s,server.s,args.s}
function   pc_startfile                                       {}
file       plugin_api.include.bb2
statement  midi_send                                          {status.b,dat1.b,dat2.b,timeindex.l}
statement  midi_quiet                                         {midistream.l}
function   midistream_seek                                    {unit.w,tickpos.l}
function   plugin_open                                        {name.s,port.s,args.s}
statement  plugin_findscreen                                 {}
statement  plugin_closescreen                                {}
function   plugin_screenaddr                                  {}
function   plugin_path                                        {}
function   plugin_base                                        {}
statement  plugin_taskpri                                     {pri.l}
function   plugin_hex2int                                     {arg.s}
function   plugin_samps2ticks                                 {samps.l}
function   plugin_ticks2samps                                 {miditicks.l}
macro      !plugin_samps2ticks                                 ;{samps.l}
macro      !plugin_ticks2samps                                 ;{miditicks.l}
statement  plugin_midi_disconnect                             {}
function   plugin_midi_connect_sync                           {mp.w,@sigtask.l,@signal.l,@sync.l,@inout.l}
function   plugin_allocmem                                    {bsize.l,memflg.l}
statement  plugin_freemem                                     {ptr.l,bsize.l}
function   plugin_midi_connect                                {mp.w,@sigtask.l,@signal.l,@inout.l}
function   plugin_midi_check                                  {}
function   plugin_midi_check_sync                             {}
function   plugin_midi_ptr                                    {}
function   plugin_midi_status                                 {}
function   plugin_midi_dat1                                   {}
function   plugin_midi_dat2                                   {}
function   plugin_midi_time_sync                              {}
function   plugin_midi_time                                   {}
statement  plugin_midi_send_in_mp                             {mp.l,ptr.l,blength.l}
statement  plugin_midi_send_out_mp                            {mp.l,ptr.l,blength.l}
statement  plugin_midi_send_in                                {ptr.l,blength.l}
statement  plugin_midi_send_out                               {ptr.l,blength.l}
function   plugin_midi_sigflag                                {}
macro      !plugin_midi_ptr                                    ;{}
macro      !plugin_midi_status                                 ;{}
macro      !plugin_midi_dat1                                   ;{}
macro      !plugin_midi_dat2                                   ;{}
macro      !plugin_midi_time_sync                              ;{}
macro      !plugin_midi_time                                   ;{}
macro      !plugin_midi_sigflag;                               {}
macro      !plugin_midi_send_in                                ;{ptr.l,blength.l}
macro      !plugin_midi_send_out                               ;{ptr.l,blength.l}
macro      !plugin_midi_send_in_mp                             ;{mp.l,ptr.l,blength.l}
macro      !plugin_midi_send_out_mp                            ;{mp.l,ptr.l,blength.l}
function   plugin_msg_send                                    {command.s}
;% START pos ; position in miditicks, or -1 = start from current position)
;% STOP ; same like pressing the stop button
;% PAUSE ; same like pressing pause button
;% PLAY ; same like pressing the play button
;% PLAYRANGE ; same like pressing play range button
;% QUIT [QUIET] ; quit HD-Rec, optional quiet to not ask for exit
;% SAVE ; save current project
;% LOAD <filename> ; load the given project
;% NEW ; create new project
;% MIDIPTR midiport data_ptr bytelength ; send mididata to HD-Rec
;% LOGIN ; private
;% LOGOUT ; private
;% ALLOCMEM memsize ; tell HD-Rec we allocated <memsize> bytes of memory
;% FREEMEM memsize ; tell HD-Rec we freed <memsize> bytes of memory
;% MIXERPORT_ADD ; private
;% MIXERPORT_REMOVE ; private
;% PATCH data_ptr bytelength midiport ; Send a patch to HD-Rec patchlist
;% SHOWAMIXER ; pop up the audio mixer window
;% HIDEAMIXER ; hide the auudi mixer window
;% Note:set filenames in  " " (\\22 in AB2)
;% IMPORT_REPLACE filename ;replace the active element
;% EXPORT_ACTIVE filename audiomode [FORCE]; audiomode AIFF test
;% FREEZE ;show busy pointer in hd-rec
;% FXFLUSH Channelnum;delete all effects in this channel
;% FXLOAD filename channelname;load all effects from file for this channel
;% FXSAVE filename channelname;save all effects for this channel
;% ACTIVATE ;cancel a freeze
;% DESELECT ALL ;deselect all Elements that are selectetbdat\thisaudio + buffersize}
function   plugin_msg_check                                   {}
function   plugin_msg_waitfor                                 {command.s,@timeout.l}
function    plugin_msg_command                                {}
function   plugin_msg_nextarg                                 {}
function   plugin_msg_sigflag                                 {}
function   plugin_samplerate                                  {}
function   plugin_barup                                       {}
function   plugin_bardown                                     {}
function   plugin_bubblehelp                                  {}
function   plugin_tpm                                         {}
function   plugin_bf_hook                                     {}
macro      !plugin_msg_sigflag                                 ;{}
macro      !plugin_samplerate                                  ;{}
macro      !plugin_barup                                       ;{}
macro      !plugin_bardown                                     ;{}
macro      !plugin_bubblehelp                                  ;{}
macro      !plugin_tpm                                         ;{}
statement  plugin_mixer_disconnect                            {}
function   plugin_mixer_connect                               {numbuffer.l,buffersize.l,channels.l,bits.l,@task.l,@signal.l,@factor.l}
function   plugin_mixer_check                                 {}
statement  plugin_mixer_setmidiframe                          {ms.l}
statement  plugin_mixer_setmidiframe_a                        {buffersize.l}
statement  plugin_close                                       {}
function   plugin_mixer_ptr                                   {mc.l}
function   plugin_mixer_ptr_clr                               {mc.l}
function   plugin_mixer_isused                                {mc.l}
function   plugin_mixer_time                                  {}
function   plugin_mixer_bsize                                 {}
function   plugin_mixer_framesize                             {}
function   plugin_mixer_fsize                                 {}
function   plugin_mixer_sigflag                               {}
statement  plugin_mixer_done                                  {}
macro      !plugin_mixer_ptr;                                  {mc.l}
macro      !plugin_mixer_ptr_clr                               ;{mc.l}
macro      !plugin_mixer_isused                                ;{mc.l}
macro      !plugin_mixer_time                                  ;{}
macro      !plugin_mixer_bsize                                 ;{}
macro      !plugin_mixer_framesize                             ;{}
macro      !plugin_mixer_fsize                                 ;{}
macro      !plugin_mixer_sigflag                               ;{}
macro      !plugin_mixer_done                                  ;{}
file       multilist.include.bb2
function   multilist_add                                      {*prev_node.ml_node,typ.b,label_text.s,user_text.s,user_data.l}
function   multilist_addsub                                   {*parent_node.ml_node,typ.b,label_text.s,user_text.s,user_data.l}
function   multilist_add_sort                                 {*next_node.ml_node,typ.b,label_text.s,user_text.s,user_data.l}
function   multilist_addsub_sort                              {*parent_node.ml_node,typ.b,label_text.s,user_text.s,user_data.l}
statement  multilist_remove                                   {*node.ml_node}
function   multilist_root                                     {*node.ml_node}
function   multilist_next                                     {*node.ml_node}
function   multilist_prev                                     {*node.ml_node}
function   multilist_getlabeltext                            {*node.ml_node}
function   multilist_getusertext                             {*node.ml_node}
statement  multilist_remove_all                               {*node.ml_node}
statement  multilist_remove_childs                            {*node.ml_node}
statement  multilist_expand                                   {*node.ml_node}
statement  multilist_shrink                                   {*node.ml_node}
statement  multilist_activate                                 {*node.ml_node}
statement  multilist_deactivate                               {*node.ml_node}
function   multilist_rowheight                                {*node.ml_node}
function   multilist_getnode                                  {*node.ml_node,spos.l}
function   multilist_find                                     {*node.ml_node,spos.l}
statement  multilist_deactivate_all                           {*node.ml_node}
function   multilist_pixwidth                                 {*rp.RastPort,*node.ml_node,sdepth.l}
function   multilist_draw                                     {*rp.RastPort,*node.ml_node,firstpos.l,lastpos.l,x.l,y.l,sdepth.l,bgpen.l,bgpen_m.l}
statement  multilist_path_addsub                              {*parent_node.ml_node,path.s,@pattern.s}
function   multilist_path_add                                 {*node.ml_node,path.s,@pattern.s}
function   multilist_path_init_root                           {path.s,name.s}
function   multilist_head                                     {*node.ml_node}
function   multilist_path_init                                {path.s,@pattern.s}
statement  multilist_path_expand                              {*node.ml_node,@pattern.s}
statement  multilist_path_shrink                              {*node.ml_node}
file       msgport.include.bb2
function   msgport_quoted                                     {a.s}
function   msgport_sigflag                                    {}
statement  msgport_setbinarymode                              {mode.w}  ; True = Binary, False = no 0 (default)
function   msgport_nextarg                                    {}
function   msgport_inbody                                     {}
function   msgport_sender                                     {}
statement  msgport_newmessage                                 {port.s}
statement  msgport_addarg                                     {arg.s}
statement  msgport_addquoted                                  {arg.s}
statement  msgport_addint                                     {value.l}
statement  msgport_addbin                                     {ptr.l,blength.l}
function   msgport_check                                      {}
statement  msgport_fake                                       {port.s,body.s}
function   msgport_waitforcomm                                {command.s,@timeout.l}
statement  msgport_wait                                       {}
function   msgport_send                                       {}
statement  msgport_close                                      {@timeout.l}
function   msgport_open                                       {port_name.s}
file       mpega.include.bb2
statement  mpega_close                                        {mpega.l}
statement  mpega_close_all                                   {}
function   mpega_examine                                      {filename.s}
function   mpega_open                                         {mpega.l,filename.s}
statement  mpega_reporterrs                                   {mpega.l,bool.w}
statement  mpega_joinmem                                      {source1.l,source2.l,dest.l,count.l}
statement  mpega_zero                                         {sourceaddr.l,blength.l} ; blength = # of bytes ; ----------
function   mpeag_read                                         {mpega.l,ptr.l,blength.l}
function   mpega_seek                                         {mpega.l,fpos.l}
function   mpega_freq                                         {mpega.l}
function   mpega_channels                                     {mpega.l}
function   mpega_blength                                      {mpega.l}
function   mpega_flength                                      {mpega.l}
function   mpega_layer                                        {mpega.l}
function   mpega_err                                          {mpega.l}
file       mousepointer.include.bb2
statement  mp_set                                             {mp.l,@win.l}
file       monkey_internal.bb2
file       monkey_data.bb2
file       monkey_constants.bb2
file       midi_device.include.bb2
statement  midiport_close                                     {mp.w}
statement  midiport_close_all                                 {}
statement  midiport_read                                      {mp.w,ptr.l,blength.l}
function   midiport_open                                      {mp.w,devicename.s,unit.l,@baud.l}
statement  midiport_write                                     {mp.w,ptr.l,blength.l}     ; just sends the given data, memory is not copied
statement  midiport_write_c                                   {mp.w,ptr.l,blength.l}    ; copies the given data and sends it after
function   midiport_receive                                   {mp.w}
function   midiport_received_length                           {mp.w}
function   midiport_received_ptr                              {mp.w}
function   midiport_sigflag                                   {}
file       mail.include.bb2
function   mail_number                                        {socket.l}
function   mail_id                                            {socket.l}
function   mail_crop                                          {socket.l}
function   mail_ok                                            {body.s}
function   mail_open                                          {socket.l,host.s,user.s,password.s}
function   mail_next                                          {socket.l,filename.s}
statement  mail_delete                                        {socket.l,number.l}
statement  mail_close                                         {socket.l}
file       locklayer.include.bb2
statement  locklayer_patch                                   {}
statement  locklayer_unpatch                                 {}
statement  unlocklayer                                        {}
function   locklayer                                          {@win.l}
statement  locklayer_free                                    {}
file       libcall.include.bb2
function   libcall                                            {libbase.l,offset.l}
statement  libcall_dat_low                                    {d0.l,d1.l,d2.l,d3.l}
statement  libcall_dat_hi                                     {d4.l,d5.l,d6.l,d7.l}
statement  libcall_adr                                        {a0.l,a1.l,a2.l,a3.l,a4.l}
file       isomap.include.bb2
function   iso_gettile                                       {x.l,y.l}
function   iso_tile_x                                        {tile.l}
function   iso_loadmap                                       {}
function   iso_savemap                                       {}
function   iso_draw                                          {rp.RastPort,x1.l,y1.l,x2.l,y2.l,depth_begin.l,depth_end.l}
statement  iso_scroll                                        {mapx.l,mapy.l}
statement  iso_depth                                         {x.l,y.l}
statement  iso_height                                        {x.l,y.l}
file       intuition.include.bb2
statement  intui_flushrawkey                                 {}
statement  intui_free                                         {}
function   intui_event                                        {} ; replaces Event
statement  intui_flushevents                                 {@idcmp.l,@win.l}
function   intui_waitevent                                    {}
function   intui_signal                                       {}
function   intui_eventwin                                    {}
file       image_blitmacros.bb2
file       image.include.bb2
function   image_isused                                       {image.l}
function   image_width                                        {image.l}
function   image_height                                       {image.l}
function   image_method                                       {image.l,method.l,arguments_ptr.l}
statement  image_pens_init                                    {}
statement  image_pens_free                                    {}
statement  image_release                                      {image.l}
statement  image_release_all                                  {}
statement  image_free_data                                    {image.l}
statement  image_free_mask                                    {image.l}
statement  image_free_alpha                                   {image.l}
statement  image_free                                         {image.l}
function   image_find_free                                   {}
function   image_find_name                                   {filename.s}
statement  image_free_all                                     {}
statement  image_initalpha                                    {image.l,aimage.l,@threshold.l}
statement  image_usealpha                                    {image.l,@threshold.l}
function   image_setalpha                                    {image.l,alphaarray.l,axs.l,ays.l}
statement  image_initmask                                    {image.l,@trgb.l,@tolerance.l}
statement  image_initbmap                                    {image.l,@friendlyscreen.l}
statement  image_prepare_all                                  {}
statement  image_loaddevisor                                  {devisor.l}
function   image_test                                         {filename.s}
function   image_get_rp                                       {image.l,rp.l,@x.l,@y.l,@xs.l,@ys.l,@trgb.l,@tolerance.l,@dithermode.l}
function   image_decode                                       {image.l,memptr.l,@memlength.l}
function   image_loadNI{image.l,filename.s,@normal.l}         ; NNum.l,NPath$,NMode.l}
function   image_load                                         {image.l,filename.s,@trgb.l,@tolerance.l,@dithermode.l,@ditherthreshold.l}
function   image_loadDT                                       {image.l,filename.s,@trgb.l,@tolerance.l,@dithermode.l,@ditherthreshold.l}
function   image_saveDT                                       {image.l,filename.s}
function   image_write                                        {image.l,dos.l,@compress.l,@form.l}
function   image_save                                         {image.l,filename.s,@form.l,@compress.l,@image2.l}
function   image_get                                          {image.l,src_image.l,@x.l,@y.l,@xs.l,@ys.l,@trgb.l,@tolerance.l,@dithermode.l}
statement  image_blitmask                                     {image.l,x.l,y.l,@rp.l}
statement  image_blit                                         {image.l,x.l,y.l,@rp.l}
statement  image_blit_scaled                                  {image.l,x.l,y.l,xs.l,ys.l,@rp.l}
statement  image_blitarea                                     {image.l,x.l,y.l,xs.l,ys.l,sourcex.l,sourcey.l,@rp.l,@usemaskifpresent.l}
statement  image_blitpattern                                  {image.l,x.l,y.l,xs.l,ys.l,@xoffset.l,@yoffset.l,@rp.l,@usemaskifpresent.l}
statement  image_draw                                         {image.l,x.l,y.l,@rp.l}
statement  image_draw2image                                   {image.l,simage.l,x.l,y.l,@xs.l,@ys.l,@sourcex.l,@sourcey.l}
statement  image_mix2image                                    {image.l,simage.l,x.l,y.l,@xs.l,@ys.l,@sourcex.l,@sourcey.l}
statement  image_texture2image                                {image.l,simage.l,x1.w,y1.w,x2.w,y2.w,x3.w,y3.w,x4.w,y4.w}
statement  image_draw_scaled                                  {image.l,x.l,y.l,xs.l,ys.l,@rp.l}
statement  image_blitmask_scaled                              {image.l,x.l,y.l,xs.l,ys.l,@rp.l,@tolerance.l}
statement  image_setdithermode                                {image.l,dithermode.l}
statement  image_handle                                       {image.l,x.l,y.l}
statement  image_midhandle                                    {image.l}
statement  image_foothandle                                   {image.l}
statement  image_blockcookie                                  {bshape.l}
statement  image_makecookie                                   {image.l,bshape.l,trgb.l}
function   image_2shape                                       {image.l,bshape.l,@trgb.l}
function   image_loadshape                                    {bshape.l,filename.s,@trgb.l}
function   image_masktst                                      {image.l,x.l,y.l}
function   image_getrgb                                       {image.l,x.l,y.l}
function   image_getrgb_rp                                    {rp.l,x.l,y.l,scr.l}
statement  image_blitblock                                   {x.l,y.l,x2.l,y2.l,w.l,h.l}
statement  image_cpublit                                      {image.l,x.l,y.l,@rp.l}
statement  image_textureblit                                  {image.l,*coos.tbcoo,@brightness.l,@db.l,@fast.l,@rp.l}
statement  image_cpublitrprp                                  {rp_s.l,b_x.l,b_y.l,rp_d.l,r_x.l,r_y.l,xs.l,ys.l,@fade_ratio.l,@fade_rgb.l}
statement  image_cpublit_scaledx                              {image.l,x.l,y.l,@xs.l,@ys.l,@rp.l,@mode.l,@density.l}
statement  image_cpublit_scaled                               {image.l,x.l,y.l,@xs.l,@ys.l,@rp.l,@mode.l,@density.l}
file       iff-ilbm.include.bb2
statement  iffilbm_close                                     {}
function   iffilbm_open                                      {filename.s}
function   iffilbm_alpha_read                                {}
function   iffilbm_rlencode                                  {srcbuff.l,dstbuff.l,slength.l,@dlength.l}
function   iffilbm_rldecode                                  {srcbuff.l,dstbuff.l,slength.l,@dlength.l}
statement  iffilbm_alpha_decode                              {destbuffer.l,awidth.l,aheight.l}
function   iffilbm_write                                     {dos.l,dataptr.l,img_width.l,img_height.l,img_grabx.l,img_graby.l,@compress.l,@usealpha.l}
file       http.include.bb2
function   BASE64_decode                                     {a$}
function   BASE64_encode                                     {a$}
statement  http_setproxy                                     {socket.l,proxy_name.s,@proxy_port.l,@username.s,@password.s}
function   http_doc                                           {url.s}
function    http_authorization                               {url.s}
function   http_host                                          {url.s}
function   http_domain                                        {url.s}
function   http_isused                                        {socket.l}
function   http_isconnected                                   {socket.l}
function   http_url                                           {socket.l}
statement  http_remove                                        {socket.l}
function   http_get                                           {socket.l}
function   http_attempt                                       {socket.l,url.s,referer.s,filename.s,timeout.l}
function   http_check                                         {@timeout.l}
function   http_received_body                                 {}
function   http_received_url                                  {}
function   http_received_referer                              {}
function   http_received_file                                 {}
function   http_received_socket                               {}
function   http_received_err                                  {}
function   http_received_size                                 {}
statement  http_close                                         {}
file       HDRec_timerdev.include.bb2
statement  timer_settpm                                       {tpm.l,resdiv.l}
statement  timer_abort                                        {}
function   timer_sigflag                                      {}
statement  timer_stop                                         {}
statement  timer_start                                        {}
statement  timer_send                                         {}
function   timer_check                                        {}
statement  timer_close                                        {}
function   timer_open                                         {timeindex_ptr.l,control_ptr.l,tpm.l,resdiv.l}
file       HDRec_svaudio.include.bb2
statement  rech_init                                          {portptr.l,numbuff.l}
statement  rech_free                                          {}
function   rech_nextbuffer                                    {}
function   rech_lastseg                                       {}
function   rech_nextbuffer_timeindex                          {}
function   rech_nextbuffer_timeindex_midi                     {}
statement  rech_nextbuffer_set                                {ptr.l,boffset.l,blength.l,mode.w,segnum.l,protect_ptr.l}
statement  rech_settimeindex                                  {timeindex.l}
statement  rech_settimeindex_midi                             {timeindex.l}
statement  rech_buffer_flush                                  {}
file       HDRec_server.include.bb2
statement  server_tolog                                       {text.s}
function   client_findimage                                   {id.l}
function   client_add                                         {id.l,name.s,port.s,flags.l}
function   client_remove                                      {id.l}
function   client_ack                                         {id.l,success.l}
function   client_getindexbyid                                {id.l}
function   client_launch_id                                   {id.l,startfile.s,showgui.w}
function   client_launch_menu                                 {menu.l}
statement  client_send_menu                                   {menu.l,body.s}
function   client_isrunning                                   {menu.l}
function   client_menuitem                                    {menu.l}
statement  client_read_def                                    {path.s}
statement  clients_send                                       {body.s,flags.l}
statement  clients_save                                       {filename.s}
statement  clients_load                                       {filename.s}
statement  clients_start                                      {midi_timeindex.l}
statement  clients_stop                                       {midi_timeindex.l}
function   clients_waitfor                                    {command.s,flags.l,@timeout.l}
statement  clients_show                                       {}
statement  clients_hide                                       {}
statement  clients_quit                                       {}
function   client_newmessage                                  {id.l}
statement  client_addarg                                      {body.s}
statement  client_addint                                      {value.l}
statement  client_send                                        {}
statement  server_autostart                                   {}
statement  server_scandir                                     {}
function   server_nextarg                                     {}
function   server_senderid                                    {}
function   server_check                                       {}
function   server_received                                    {}
statement  server_quit                                       {}
statement  server_close                                       {}
function   server_logincount                                 {}
function   server_check_gui                                   {}
function   server_open                                        {name.s,port.s,path.s,base_ptr.l,defshape.l,tolog.w}
file       HDRec_rec.include.bb2
function   rec_port_add                                       {sigtask.l,sigflag.l}
statement  rec_port_remove                                    {}
statement  rec_stop                                           {}
statement  rec_signal                                         {}
file       HDRec_mstream.include.bb2
statement  midistream_change                                  {midistream.w}
statement  midistream_remove                                  {midistream.w}
statement  midistream_seek                                    {midistream.w,tickpos.l}
statement  midistream_reset                                   {midistream.w}
statement  midistream_reset_all                               {}
function   midistream_create                                  {midistream.w,blength.l}
function   midistream_extend                                  {midistream.w,addlength.l}
statement  midistream_sanity                                  {midistream.w}
statement  midistream_mute                                    {midistream.w}
statement  midistream_demute                                  {midistream.w}
statement  midistream_node_add                                {midistream.w,tickpos.l} ; ACHTUNG: Fur diese Befehle muss vorher obtained werden !
statement  midistream_node_fill                               {midistream.w,data_ptr.l,blength.l}
statement  midistream_node_fix                                {midistream.w}
statement  midistream_fix                                    {midistream.w}
file       HDRec_mixer.include.bb2
function   mixer_port_add                                     {typ.l,sigtask.l,sigflag.l,pluginid.l}
statement  mixer_port_remove                                  {mp.l}
statement  mixer_port_remove_plugin                           {pluginid.l}
statement  mixer_port_remove_all                              {}
statement  mixer_stop                                         {}
statement  mixer_signal                                       {}
file       HDRec_MIDI.include.bb2
statement  mt_signal                                          {command.w,@value.l}
function   mt_open                                            {}
statement  mt_close                                           {}
statement  mt_start                                           {timeindex.l}
statement  mt_stop                                            {}
statement  mt_reconfig                                        {}
statement  mt_setcamd                                         {midiport.w,in.s,out.s}
statement  mt_settpm                                          {tpm.l}
statement  mt_setresdiv                                       {resdiv.l}
statement  mt_setpri                                          {pri.w}
statement  mt_record                                          {}
statement  mt_settimeindex                                    {timeindex.l}
file       HDRec_fx.include.bb2
statement  startup_message                                    {text.s}
function   fxlib_findfree                                     {}
function   fx_findfree                                        {}
function   fxi_findfree                                       {}
statement  fxparseerr                                         {dos.l,text.s}
statement  fxgui_tag_skipline                                 {dos.l}
statement  fxgui_tag_next                                     {dos.l}
function   fxgui_tag_name                                     {dos.l}
function   fxgui_tag_getparam                                 {dos.l}
function   fxgui_tag_getvalue                                 {dos.l}
statement  fxgui_writeele                                    {dos.l}
statement  fxgui_resetele                                     {typ.l}
statement  fxgui_parse                                       {filename.s}
statement  fxgui_free                                         {fxlibnum.l}
function   fxgui_read                                        {filename.s}
function   fxlib_install                                      {libname.s}
function   fxlib_open                                        {fxlibnum.l}
statement  fxlib_close                                       {fxlibnum.l}
statement  fxi_visual_add                                     {fxi.l,win.l,tuiobj.l}
statement  fx_visual_add                                      {fx.l,win.l,tuiobj.l}
statement  fxi_visual_remove                                  {fxi.l,win.l}
statement  fxtui_visual_remove                                {win.l,tuiobj.l}
statement  fxi_visual_remove_all                             {}
statement  fxi_visual_drawx                                   {fxi.l,win.l,tuiobj.l,force.l}
statement  fxi_visual_draw_all                                {force.l}
statement  fxi_visual_redraw                                  {win.l,tuiobj.l}
function   fx_remove                                         {fx.l}
function   fx_create_num                                     {fxlibnum.l}
function   fx_supported_channels                              {fx.l,channels.l}
function   fx_supported_send                                  {fx.l}
function   fx_supported_insert                                {fx.l}
function   fxlib_find                                         {libid.l}
function   fx_create                                         {libid.l}
function   metafile_write_fx                                  {dos.l,fx.l}
function   metafile_read_fx                                   {dos.l,@channels.l,@is_insert.l,@is_send.l}
function   fx_load                                            {filename.s,channels.l,is_insert.l,is_send.l}
function   fx_save                                            {fx.l,filename.s,@force.l}
statement  fxlib_scan                                         {path.s}
statement  menu_fx                                            {fx.l}
statement  fx_win                                             {fx.l}
statement  fxi_win                                            {fxi.l}
statement  fxi_process_insert                                {fxi.l,sourceaddr.l,destaddr.l,flength.l,workbufferaddr.l}
statement  fxi_process_send                                  {fxi.l,sourceaddr.l,destaddr.l,flength.l,workbufferaddr.l}
statement  fxi_update                                        {fxi.l}
statement  fxi_reset                                         {fxi.l,framepos.l}
statement  fx_update                                          {fx.l}
statement  fx_reset                                           {fx.l,framepos.l}
statement  fxi_remove                                         {fxi.l}
statement  fx_notify                                          {}
function   fxi_create                                         {fx.l,stereo.l,samplerate.l,fx_start.l,fx_end.l}
function   fxi_name                                           {fxi.l}
statement  fxlib_free_all                                    {}
file       HDRec_CPU.include.bb2
statement  cpu_signal                                         {command.l}
statement  cpu_reconfig                                       {}
function   cpu_open                                           {rtbase_ptr.l}
statement  cpu_close                                          {}
statement  cpu_start                                          {}
statement  cpu_stop                                           {}
function   cpu_get                                            {}
file       HDRec_AUDIO.include.bb2
statement  mx_signal                                          {command.w}
statement  mx_reconfig                                        {}
function   mx_open                                            {rtbase_ptr.l,fxilist_ptr.l}
statement  mx_close                                           {}
statement  mx_start                                           {}
statement  mx_stop                                            {}
statement  mx_setpri                                          {pri.w}
file       hanuta.include.bb2
statement  hanuta_servent_add                                 {ip.l,port.w}
statement  hanuta_servent_remove                              {ip.l}
statement  hanuta_check                                       {}
statement  hanuta_ping                                        {socket.l}
statement  hanuta_pong                                        {servent.s}
statement  hanuta_find                                        {servent.s,searchstring.s}
statement  hanuta_hit                                         {servent.s,hit.s}
statement  hanuta_download                                    {servant,hit.s}
function   hanuta_open                                        {servercache.s,port.w}
statement  hanuta_close                                       {}
file       gus.include.bb2
statement  gus_close                                          {}
function   gus_open                                           {filename.s}
function   gus_tst                                            {filename.s}
function   gus_getname                                        {ptr.l,maxlength.l}
function   gus_name                                           {}
function   gus_numsamps                                       {}
function   gus_nextsample                                     {}
function   gus_sample_name                                    {}
function   gus_sample_blength                                 {}
function   gus_sample_flength                                 {}
function   gus_sample_bit                                     {}
function   gus_sample_unsigned                                {}
function   gus_sample_loop_start                              {}
function   gus_sample_loop_start_frac                         {}
function   gus_sample_loop                                    {}
function   gus_sample_loop_end                                {}
function   gus_sample_loop_end_frac                           {}
function   gus_sample_rootkey                                 {}
function   gus_sample_lowkey                                  {}
function   gus_sample_highkey                                 {}
function   gus_sample_fine                                    {}
function   gus_sample_rate                                    {}
function   gus_sample_gain                                    {}
function   gus_sample_pan                                     {}
function   gus_sample_readdata                                {ptr.l,maxbytes.l}
file       genrelist.include.bb2
file       fx_library.include.bb2
function   fxlib_addpart                                      {pathpart.s,filepart.s}
function   fxlib_exist                                        {filename.s}
function   fxlib_libsdir                                      {defaultdir.s}
statement  error                                              {text.s}
file       font.include.bb2
function   font_exist                                         {f$}
function   font_load                                          {fontname.s,ysize.l}
statement  font_set                                           {rp.l,font.l}
statement  font_print                                         {rp.l,str_ptr.l}
function   font_textlength                                    {rp.l,str_ptr.l,@count.l,@font.l}
function   font_clone                                         {bb2font.l}
function   font_size                                          {*font.TextFont}
statement  font_close                                         {*font.TextFont}
file       file_requester.include.bb2
function   requ_file                                          {id.l,savemode.l,multiselect.l,drawersonly.l,@scrX.l}
function   requ_file_next                                     {}
function   requ_file_chosen                                   {id.l}
statement  requ_file_setfile                                  {id.l,path.s,fil.s,patt.s}
statement  requ_file_settitle                                 {id.l,title.s,ok.s,cancel.s}
function   requ_file_file                                     {id.l}
function   requ_file_path                                     {id.l}
function   requ_file_pattern                                  {id.l}
statement  requ_file_setxy                                    {x.l,y.l,xs.l,ys.l}
file       file_mod.include.bb2
function   mod_getsample                                      {note_ptr.l}
function   mod_getperiod                                      {note_ptr.l}
function   mod_getnote                                        {note_ptr.l}
function   mod_getfx                                          {note_ptr.l}
function   mod_getfx_value                                    {note_ptr.l}
statement  mod_close                                          {}
function   mod_open                                           {filename.s}
function   mod_examine                                        {filename.s}
function   mod_getsongname                                    {}
function   mod_getsamplename                                  {s.l}
function   mod_next_pattern                                   {}
function   mod_next_step                                      {}
function   mod_next_sample                                    {channel.l}
function   mod_next_note                                      {channel.l}  ; note = 0 : no note!
function   mod_next_fx                                        {channel.l}
file       file_instr.include.bb2
statement  instr_close                                        {}
function   instr_open                                         {filename.s}
function   instr_tst                                          {filename.s}
function   instr_name                                         {}
function   instr_numsamps                                     {}
function   instr_nextsample                                   {}
function   instr_sample_name                                  {}
function   instr_sample_blength                               {}
function   instr_sample_flength                               {}
function   instr_sample_loop_start                            {}
function   instr_sample_loop_start_frac                       {}
function   instr_sample_loop                                  {}
function   instr_sample_loop_end                              {}
function   instr_sample_loop_end_frac                         {}
function   instr_sample_rootkey                               {}
function   instr_sample_lowkey                                {}
function   instr_sample_highkey                               {}
function   instr_sample_fine                                  {}
function   instr_sample_rate                                  {}
function   instr_sample_gain                                  {}
function   instr_sample_pan                                   {}
function   instr_sample_readdata                              {ptr.l,maxbytes.l}
file       file_audio.include.bb2
function   ffa_checkform                                      {bits.w,samplerate.l,channels.l,byteorder.l}
function   ffa_off2ms                                         {dos.l,offset.l}
function   ffa_ms2off                                         {dos.l,ms.l}
function   ffa_formvalue                                      {dos.l}
function   ffa_writesample                                    {dos.l,rootkey.l,fine.l,@loop_start.l,@loop_end.l}
function   ffa_checkintel                                     {dos.l}
function   ffa_checkunsigned                                  {dos.l}
function   ffa_checkstereo                                    {dos.l}
function   ffa_readheader                                     {dos.l,@checkform.l}
function   ffa_writeheader                                    {dos.l,flength.l,samplerate.l,channels.w,bits.w,form.l}
function   ffa_rewriteheader                                  {dos.l}
function   ffa_ext                                            {form.l}
statement  ffa_freeheader                                     {dos.l}
function   ffa_fixup                                          {dos.l}
function   ffa_resample                                       {sourceaddr.l,destaddr.l,d_length.l,s_length.l,ratio.l,brain_ptr.l}
function   ffa_writedata                                      {dos.l,ptr.l,s_blength.l,samplerate.l,bits.l,channels.l}
function   ffa_readdata                                       {dos.l,ptr.l,d_blength.l,samplerate.l,bits.l,channels.l}
function   ffa_blength                                        {dos.l}
function   ffa_flength                                        {dos.l}
function   ffa_samplerate                                     {dos.l}
function   ffa_framesize                                      {dos.l}
function   ffa_channels                                       {dos.l}
function   ffa_bits                                           {dos.l}
function   ffa_byteorder                                      {dos.l}
statement  ffa_reporterrs                                     {dos.l,bool.w}
statement  ffa_setmode                                        {dos.l,mode.l,quality.l}
function   ffa_format                                         {dos.l}
function   ffa_examine                                        {filename.s}
function   ffa_seek                                           {dos.l,fpos.l}
function   ffa_read                                           {filename.s,@checkform.l}
function   ffa_clone                                          {odos.l}
function   ffa_write                                          {filename.s,formtext.s,flength.l,bits.w,channels.w,samplerate.l}
function   ffa_forcewrite                                     {filename.s,formtext.s,flength.l,bits.w,channels.w,samplerate.l}
statement  ffa_close                                          {dos.l}
statement  ffa_erase                                          {dos.l}
statement  ffa_free                                           {}
function   ffa_rootkey                                       {dos.l}
function   ffa_fine                                          {dos.l}
function   ffa_sample_start                                  {dos.l}
function   ffa_sample_end                                    {dos.l}
function   ffa_loop_start                                    {dos.l}
function   ffa_loop                                          {dos.l}
function   ffa_loop_end                                      {dos.l}
file       file.include.bb2
function   file_wflip                                         {value.w}
function   file_lflip                                         {value.l}
statement  file_speedy                                        {dos.l,@buffsize.l}
function   file_length                                        {dos.l}
function   file_seek                                          {dos.l,filepos.l}
function   file_seek_rel                                      {dos.l,offset.l}
function   file_freedos                                      {}
statement  file_lock                                          {dos.l}
statement  file_unlock                                        {dos.l}
statement  file_close                                         {dos.l}
statement  file_close_all                                    {}
function   file_realname                                      {dos.l}
statement  file_erase                                         {dos.l}
function   file_isopen                                        {name.s}
function   file_ioerr                                         {}
function   file_open                                          {name.s,extention.s,mode.w}
function   file_name                                          {dos.l}
function   file_path                                          {dos.l}
function   file_fullname                                      {dos.l}
function   file_isused                                        {dos.l}
function   file_clone                                         {odos.l}
function   file_write                                         {dos.l,sourceaddr.l,blength.l}
function   file_read                                          {dos.l,destaddr.l,blength.l}
statement  file_cache                                         {dos.l}
function   file_eof                                           {dos.l}
function   file_readline                                      {dos.l}
function   file_readline_space                                {dos.l}
statement  file_write_value                                   {dos.l,name.s,value.l}
statement  file_write_string                                  {dos.l,name.s,string.s}
function   file_read_name                                     {dos.l}
function   file_read_string                                   {}
function   file_read_value                                    {}
function   file_findchunk                                     {dos.l,chunk.l,@pos.l,@blength.l,@immediate.l,@nowordalign.l}
function   file_getchunk                                      {dos.l,chunk.l,@pos.l,@blength.l,@immediate.l,@nowordalign.l}
function   file_writechunk                                    {dos.l,head.l,@blength.l,@nowordalign.l}
function   file_closechunk                                    {dos.l,head.l}
statement  file_setasl                                        {x.l,y.l,xs.l,ys.l}
statement  file_setaslname                                    {path.s,fil.s,patt.s}
function   file_seekpos                                       {dos.l}
statement  file_setintel                                      {dos.l}
function   file_writestring                                   {dos.l,string.s}
function   file_readstring2                                   {dos.l}
function   file_readstring                                    {dos.l,@limit.l}
function   file_readbyte                                      {dos.l}
function   file_writebyte                                     {dos.l,byte8.b}
function   file_writeword                                     {dos.l,word16.w}
function   file_writelong                                     {dos.l,long32.l}
function   file_readln                                        {dos.l}
function   file_readab2ln                                     {dos.l}
function   file_writeln                                       {dos.l,a.s}
function   file_identify                                     {filename.s}
file       fft.include.bb2
function   fft_makeptable{logsize.l}                          ; do the dirty stuff (oh my god, I have headache!)
statement  fft_permutate_stereo                               {*fft_handle.fft_handle,buffer_src.l,buffer_dst_l.l,buffer_dst_r.l}
statement  fft_permutate_mono                                 {*fft_handle.fft_handle,buffer_src.l,buffer_dst.l}
statement  fft_create_hamming                                {*fft_handle.fft_handle}
statement  fft_permutate_complex                              {*fft_handle.fft_handle,buffer_src.l,buffer_dst.l}
statement  fft_merge_stereo                                   {*fft_handle.fft_handle,buffer_src_l.l,buffer_src_r.l,buffer_dst.l}
statement  fft_merge_mono                                     {*fft_handle.fft_handle,buffer_src.l,buffer_dst.l}
statement  fft_forward_sms                                   {*fft_handle.fft_handle,buffer_dst.l}
statement  fft_forward                                        {*fft_handle.fft_handle,buffer_dst.l}
statement  fft_forward_tk_broken                              {*fft_handle.fft_handle,buffer_dst.l}
statement  fft_backward                                       {*fft_handle.fft_handle,buffer_dst.l}
statement  fft_backward2                                      {*fft_handle.fft_handle,buffer_dst.l}
statement  fft_do_mono                                        {*fft_handle.fft_handle,buffer_src.l,buffer_dst.l}
statement  fft_do_stereo                                      {*fft_handle.fft_handle,buffer_src.l,buffer_dst_l.l,buffer_dst_r.l}
statement  ifft_do_mono                                       {*fft_handle.fft_handle,buffer_src.l,buffer_dst.l}
statement  ifft_do_stereo                                     {*fft_handle.fft_handle,buffer_src_l.l,buffer_src_r.l,buffer_dst.l}
statement  fft_free                                          {*fft_handle.fft_handle}
function   fft_init                                           {logsize.l}
file       error_xlog.include.bb2
statement  error_flags                                        {flags.l}
statement  error                                              {text.s,@errorcode.l,@onlyonce.l}
function   ask                                                {text.s,buttons.s}
statement  message                                            {text.s}
statement  serror                                             {text.s}
statement  error_clear                                        {}
function   error_getcode                                      {}
file       error2.include.bb2
statement  error_flags                                        {flags.l}
statement  error                                              {text.s,@errorcode.l,@onlyonce.l}
function   ask                                                {text.s,buttons.s}
statement  message                                            {text.s}
statement  serror                                             {text.s}
statement  error_clear                                        {}
function   error_getcode                                      {}
file       error.include.bb2
statement  error_flags                                        {flags.l}
statement  error                                              {text.s,@errorcode.l,@onlyonce.l}
function   ask                                                {text.s,buttons.s}
statement  message                                            {text.s}
statement  serror                                             {text.s}
statement  error_clear                                        {}
function   error_getcode                                      {}
file       eclock.include.bb2
statement  eclock_close                                       {}
function   eclock_open                                        {@scaler.l} ;the ticks per second default 1000
statement  eclock_start                                       {@scaler.l} ;the ticks per second default 1000
function   eclock_stop                                        {} ; read the timediffrence to eclock_start
file       dsp.include.bb2
macro      !dsp_interp                                          : `1 = ((`4)-(`2)) * (`3) + (`2)            :  
macro      !dsp_macs                                              : `1 = (`3)*(`4) + (`2)                     :  
macro      !dsp_macsn                                            : `1 = ((`3)*(-`4)) + (`2)                  :  
  ; faster
macro      !dsp_acc3                                              : `1 =  (`2) + (`3) + (`4)                  :  
macro      !dsp_tstneg                                          :  `2 >= `4 ! `1 = `3:" `1 = -`3    :  
macro      !dsp_limit                                            :  `2 >= `4 ! `1 = `3:" `1 = `4     :  
macro      !dsp_limitn                                          :  `2  < `4 ! `1 = `3:" `1 = `4     :  
macro      !dsp_macmv                                            : _accum.f = ((`3)*(`4))+ _accum : `1 = `2  :  
macro      !dsp_macmv_na:                                      _accum.f = ((`1)*(`2))+ _accum            :  
macro      !dsp_macints                                        : `1 = (`3)*(`4) + (`2)                     :  
macro      !dsp_accumclr:                                      _accum.f = 0                              :  
macro      !dsp_accum                                            : `1 = _accum.f : _accum = 0                :  
macro      !dsp_idelay_read                                    : `1 = .f(((((`2)*4)+_idel@count.l) B #_idel@mask)+_idel@buf.l) :  
macro      !dsp_xdelay_read                                    : `1 = .f(((((`2)*4)+_xdel@count.l) B #_xdel@mask)+_xdel@buf.l) :  
macro      !dsp_ydelay_read                                    : `1 = .f(((((`2)*4)+_ydel@count.l) B #_ydel@mask)+_ydel@buf.l) :  
macro      !dsp_zdelay_read                                    : `1 = .f(((((`2)*4)+_zdel@count.l) B #_zdel@mask)+_zdel@buf.l) :  
macro      !dsp_idelay_write                                       : .f ((((`2)*4)+_idel@count.l) B #_idel@mask)+_idel@buf.l,`1 :  
macro      !dsp_xdelay_write                                       : .f ((((`2)*4)+_xdel@count.l) B #_xdel@mask)+_xdel@buf.l,`1 :  
macro      !dsp_ydelay_write                                       : .f ((((`2)*4)+_ydel@count.l) B #_ydel@mask)+_ydel@buf.l,`1 :  
macro      !dsp_zdelay_write                                       : .f ((((`2)*4)+_zdel@count.l) B #_zdel@mask)+_zdel@buf.l,`1 :  
macro      !dsp_idelay_writeo                                  : .f(((((`2)*4)+#_idel@writeoffset)+_idel@count.l) B #_idel@mask)+_idel@buf.l,`1 :  
macro      !dsp_xdelay_writeo                                  : .f(((((`2)*4)+#_xdel@writeoffset)+_xdel@count.l) B #_xdel@mask)+_xdel@buf.l,`1 :  
macro      !dsp_ydelay_writeo                                  : .f(((((`2)*4)+#_ydel@writeoffset)+_ydel@count.l) B #_ydel@mask)+_ydel@buf.l,`1 :  
macro      !dsp_zdelay_writeo                                  : .f(((((`2)*4)+#_zdel@writeoffset)+_zdel@count.l) B #_zdel@mask)+_zdel@buf.l,`1 :  
macro      !dsp_idelay_read_fvar                               : `1 = .f(((_idel@count.l+(`2)) B #_idel@mask)+_idel@buf.l) :  
macro      !dsp_xdelay_read_fvar                               : `1 = .f(((_xdel@count.l+(`2)) B #_xdel@mask)+_xdel@buf.l) :  
macro      !dsp_ydelay_read_fvar                               : `1 = .f(((_ydel@count.l+(`2)) B #_ydel@mask)+_ydel@buf.l) :  
macro      !dsp_zdelay_read_fvar                               : `1 = .f(((_zdel@count.l+(`2)) B #_zdel@mask)+_zdel@buf.l) :  
macro      !dsp_idelay_write_fvar                              : .f(((`2)+_idel@count.l) B #_idel@mask)+_idel@buf.l,`1 :  
macro      !dsp_xdelay_write_fvar                              : .f(((`2)+_xdel@count.l) B #_xdel@mask)+_xdel@buf.l,`1 :  
macro      !dsp_ydelay_write_fvar                              : .f(((`2)+_ydel@count.l) B #_ydel@mask)+_ydel@buf.l,`1 :  
macro      !dsp_zdelay_write_fvar                              : .f(((`2)+_zdel@count.l) B #_zdel@mask)+_zdel@buf.l,`1 :  
macro      !dsp_idelay_read_ivar                               : `1 = .l(((_idel@count.l+(`2)) B #_idel@mask)+_idel@buf.l) :  
macro      !dsp_xdelay_read_ivar                               : `1 = .l(((_xdel@count.l+(`2)) B #_xdel@mask)+_xdel@buf.l) :  
macro      !dsp_ydelay_read_ivar                               : `1 = .l(((_ydel@count.l+(`2)) B #_ydel@mask)+_ydel@buf.l) :  
macro      !dsp_zdelay_read_ivar                               : `1 = .l(((_zdel@count.l+(`2)) B #_zdel@mask)+_zdel@buf.l) :  
macro      !dsp_idelay_write_ivar                              : .l(((`2)+_idel@count.l) B #_idel@mask)+_idel@buf.l,`1 :  
macro      !dsp_xdelay_write_ivar                              : .l(((`2)+_xdel@count.l) B #_xdel@mask)+_xdel@buf.l,`1 :  
macro      !dsp_ydelay_write_ivar                              : .l(((`2)+_ydel@count.l) B #_ydel@mask)+_ydel@buf.l,`1 :  
macro      !dsp_zdelay_write_ivar                              : .l(((`2)+_zdel@count.l) B #_zdel@mask)+_zdel@buf.l,`1 :  
macro      !dsp_idelay_read_int                                : `1 = .l(((_idel@count.l+(`2*4)) B #_idel@mask)+_idel@buf.l) :  
macro      !dsp_xdelay_read_int                                : `1 = .l(((_xdel@count.l+(`2*4)) B #_xdel@mask)+_xdel@buf.l) :  
macro      !dsp_ydelay_read_int                                : `1 = .l(((_ydel@count.l+(`2*4)) B #_ydel@mask)+_ydel@buf.l) :  
macro      !dsp_zdelay_read_int                                : `1 = .l(((_zdel@count.l+(`2*4)) B #_zdel@mask)+_zdel@buf.l) :  
macro      !dsp_idelay_write_int                               : .l(((`2*4)+_idel@count.l+#_idel@writeoffset) B #_idel@mask)+_idel@buf.l,`1 :  
macro      !dsp_xdelay_write_int                               : .l(((`2*4)+_xdel@count.l+#_xdel@writeoffset) B #_xdel@mask)+_xdel@buf.l,`1 :  
macro      !dsp_ydelay_write_int                               : .l(((`2*4)+_ydel@count.l+#_ydel@writeoffset) B #_ydel@mask)+_ydel@buf.l,`1 :  
macro      !dsp_zdelay_write_int                               : .l(((`2*4)+_zdel@count.l+#_zdel@writeoffset) B #_zdel@mask)+_zdel@buf.l,`1 :  
macro      !dsp_idelay_write_add                               : ) a1,(((`2*4)+_idel@count.l+#_idel@writeoffset) B #_idel@mask)+_idel@buf.l : ) d1,`1 : =.l d1,(a1) :  
macro      !dsp_xdelay_write_add                               : ) a1,(((`2*4)+_xdel@count.l+#_xdel@writeoffset) B #_xdel@mask)+_xdel@buf.l : ) d1,`1 : =.l d1,(a1) :  
macro      !dsp_ydelay_write_add                               : ) a1,(((`2*4)+_ydel@count.l+#_ydel@writeoffset) B #_ydel@mask)+_ydel@buf.l : ) d1,`1 : =.l d1,(a1) :  
macro      !dsp_zdelay_write_add                               : ) a1,(((`2*4)+_zdel@count.l+#_zdel@writeoffset) B #_zdel@mask)+_zdel@buf.l : ) d1,`1 : =.l d1,(a1) :  
macro      !dsp_idelay_use                                     : _idel@buf.l=`1 : _idel@count.l=(`2)*4 : #_idel@writeoffset=`3*4 :  
macro      !dsp_xdelay_use                                     : _xdel@buf.l=`1 : _xdel@count.l=(`2)*4 : #_xdel@writeoffset=`3*4 :  
macro      !dsp_ydelay_use                                     : _ydel@buf.l=`1 : _ydel@count.l=(`2)*4 : #_ydel@writeoffset=`3*4 :  
macro      !dsp_zdelay_use                                     : _zdel@buf.l=`1 : _zdel@count.l=(`2)*4 : #_zdel@writeoffset=`3*4 :  
macro      !dsp_idelay_storecounter                            : `1=(_idel@count.l/4) :  
macro      !dsp_xdelay_storecounter                            : `1=(_xdel@count.l/4) :  
macro      !dsp_ydelay_storecounter                            : `1=(_ydel@count.l/4) :  
macro      !dsp_zdelay_storecounter                            : `1=(_zdel@count.l/4) :  
macro      !dsp_idelay_set                                     : _idel@count=(`1) :  
macro      !dsp_xdelay_set                                     : _xdel@count=(`1) :  
macro      !dsp_ydelay_set                                     : _ydel@count=(`1) :  
macro      !dsp_zdelay_set                                     : _zdel@count=(`1) :  
macro      !dsp_idelay_inc                                     : _idel@count=(_idel@count+(`1)) B #_idel@mask :  
macro      !dsp_xdelay_inc                                     : _xdel@count=(_xdel@count+(`1)) B #_xdel@mask :  
macro      !dsp_ydelay_inc                                     : _ydel@count=(_ydel@count+(`1)) B #_ydel@mask :  
macro      !dsp_zdelay_inc                                     : _zdel@count=(_zdel@count+(`1)) B #_zdel@mask :  
macro      !dsp_idelay_alloc                                   : #idelay_size = `2 : `1 =  (#idelay_size*4,#MEMF_CLEAR) : #_idel@mask=(#idelay_size | 2)-1 :  
macro      !dsp_xdelay_alloc                                   : #xdelay_size = `2 : `1 =  (#xdelay_size*4,#MEMF_CLEAR) : #_xdel@mask=(#xdelay_size | 2)-1 :  
macro      !dsp_ydelay_alloc                                   : #ydelay_size = `2 : `1 =  (#ydelay_size*4,#MEMF_CLEAR) : #_ydel@mask=(#ydelay_size | 2)-1 :  
macro      !dsp_zdelay_alloc                                   : #zdelay_size = `2 : `1 =  (#zdelay_size*4,#MEMF_CLEAR) : #_zdel@mask=(#zdelay_size | 2)-1 :  
macro      !dsp_idelay_free                                    :  `1 !  `1,#idelay_size*4 : `1 =  :  
macro      !dsp_xdelay_free                                    :  `1 !  `1,#xdelay_size*4 : `1 =  :  
macro      !dsp_ydelay_free                                    :  `1 !  `1,#ydelay_size*4 : `1 =  :  
macro      !dsp_zdelay_free                                    :  `1 !  `1,#zdelay_size*4 : `1 =  :  
macro      !dsp_idelay_flush                                   :  `1 ! !dsp_padzero {`1,#idelay_size} :  
macro      !dsp_xdelay_flush                                   :  `1 ! !dsp_padzero {`1,#xdelay_size} :  
macro      !dsp_ydelay_flush                                   :  `1 ! !dsp_padzero {`1,#ydelay_size} :  
macro      !dsp_zdelay_flush                                   :  `1 ! !dsp_padzero {`1,#zdelay_size} :  
file       dos.include.bb2
statement  dos_readargs                                       {}
function   dos_numpars                                        {}
function   dos_nextarg                                        {}
function   dos_nextarg                                        {}
function   dos_numpars                                        {}
statement  dos_readargs                                       {}
function   dos_nextarg                                        {}
function   dos_numpars                                        {}
statement  dos_readargs                                       {}
function   dos_addpart                                        {path.s,fil.s}
function   dos_addpart_                                       {pathpart.s,filepart.s}
function   dos_filepart                                       {path.s}
function   dos_pathpart                                       {path.s}
function   dos_filepart_                                      {filename.s}
function   dos_pathpart_                                      {filename.s}
function   dos_parent                                        {path.s}
function   dos_exist                                          {filename.s}
function   dos_gettoolstring                                  {toolname.s,def.s,@filename.s}
function   dos_gettoolvalue                                   {toolname.s,def.l,@filename.s}   ; 0 = no value found, value else, e.g. ("$4A3F4B" or "1234")
function   dos_settoolstring                                  {toolname.s,toolstring.s,@filename.s}
function   dos_settoolvalue                                   {toolname.s,toolvalue.l,@filename.s}
function   dos_checkspace                                     {disk.s,bytes.f}
function   dos_rempath                                        {filename.s,path.s}
function   dos_progsdir                                       {defaultdir.s}
function   dos_settaskpri                                     {newpri.w}
function   dos_ext_remove                                     {filename.s} ; ------------------------------------------------------
function   dos_extention                                      {filename.s} ; ------------------------------------------------------
function   dos_ext_set                                        {filename.s,extention.s}
function   dos_createdir                                      {dir.s}
function   dos_checklib                                       {library.s,libversion.w}
function   dos_delete                                         {filename.s}
function   dos_copy                                           {sourcefile.s,destfile.s}
function   dos_rename                                         {oldname.s,newname.s}
function   dos_setprotect                                     {filename.s, bits.l}
function   dos_fsize                                          {filename.s}
function   dos_isdir                                          {filename.s}
function   dos_check                                          {filename.s}
function   dos_fsize2                                         {filename.s}
function   dos_makefilename                                   {filename.s}
statement  dos_run_cli                                        {filename.s,priority.l,@stack.l,@waitfinish.l}
function   dos_run_wb                                         {filename.s}
file       dbl_display.include.bb2
statement  dbl_hidepointer                                    {}
statement  dbl_showpointer                                    {@pnum.l}
function   dbl_getpen                                         {r.l,g.l,b.l}
function   dbl_getpenrgb                                      {rgbval.l}
statement  dbl_setpen                                         {n.l,r.l,g.l,b.l}
statement  dbl_setpenrgb                                      {n.l,rgbval.l}
statement  dbl_collision_free                                 {}
statement  dbl_remplayfield                                   {}
statement  dbl_setplayfield                                  {x1.l,y1.l,x2.l,y2.l}
statement  dbl_free                                           {}
statement  dbl_fade                                          {rgbval.l,ratio.l,@nosnap.l}
statement  dbl_flip                                           {}
function   dbl_width                                         {}
function   dbl_height                                        {}
function   dbl_depth                                         {}
statement  dbl_qdamage                                        {x.l,y.l,xs.l,ys.l,@db.l}
statement  dbl_qrefresh                                       {x.l,y.l,xs.l,ys.l,@db.l}
statement  dbl_qdamage_area                                  {x1.l,y1.l,x2.l,y2.l,@db.l}
function   dbl_init                                           {screenname.s,modeid.l,@scr_width.l,@scr_height.l,@scr_depth.l,@idcmp.l}
statement  dbl_setfps                                        {vblank.l}
statement  dbl_qline                                          {rgbval.l,x1.l,y1.l,x2.l,y2.l}
statement  dbl_qplot                                          {rgbval.l,x1.l,y1.l}
statement  dbl_qbox                                           {rgbval.l,x1.l,y1.l,x2.l,y2.l}
statement  dbl_qblitx                                         {image.l,x.l,y.l,@factor.f,@yfactor.f,@mode.l,@density.l}
statement  dbl_qblit                                          {image.l,x.l,y.l,@factor.f,@yfactor.f,@mode.l,@density.l}
statement  dbl_qblit_scaled                                   {image.l,x.l,y.l,factor.f,@yfactor.f}
statement  dbl_qprint                                         {text.s,x.l,y.l,@fgpen.l,@bgpen.l,@align.l,@valign.l}
statement  dbl_bgblit                                         {image.l,x.l,y.l,@collision.l,@factor.f,@yfactor.f,@mode.l,@density.l}
statement  dbl_bgbox                                          {rgbval.l,x1.l,y1.l,x2.l,y2.l,@collision.l}
statement  dbl_bgline                                         {rgbval.l,x1.l,y1.l,x2.l,y2.l,@collision.l}
statement  dbl_bgplot                                         {rgbval.l,x1.l,y1.l,@collision.l}
statement  dbl_bgblitpattern                                  {image.l,x.l,y.l,xs.l,ys.l,@xoff.l,@yoff.l,@collision.l}
statement  dbl_bgscroll                                       {dx.l,dy.l,@collision.l}
statement  dbl_bgprint                                        {text.s,x.l,y.l,@fgpen.l,@bgpen.l,@collision.l,@align.l,@valign.l}
statement  dbl_unqueue                                        {}
statement  dbl_collision_init                                 {}
function   dbl_hit                                            {x.l,y.l}
function   dbl_2imghit                                        {image1.l,x1.l,y1.l,image2.l,x2.l,y2.l}
function   dbl_imgmaskhit                                     {image.l,x.l,y.l,tstx.l,tsty.l}
statement  dbl_reset                                          {}
file       c_internal.bb2
file       cpu.include.bb2
function   GetEmu                                             {}
function   GetCPU                                             {}
function   GetFPU                                             {}
function   CPU_text                                           {cpu.b}
function   FPU_text                                           {fpu.b}
function   Emu_text                                           {emu.b}
function   FPU_mode                                           {}
statement  FPU_reset                                          {}
file       convert_audio.include.bb2
statement  conv_8m_8m                                         {sourceaddr.l,destaddr.l,flength.l,mode.l,quality.l}
statement  conv_24m_24m                                       {sourceaddr.l,destaddr.l,flength.l,mode.l,quality.l}
statement  conv_24s_24s                                       {sourceaddr.l,destaddr.l,flength.l,mode.l,quality.l}
statement  conv_24m_16m                                       {sourceaddr.l,destaddr.l,flength.l,mode.l,quality.l}
statement  conv_24m_16m_im                                    {sourceaddr.l,destaddr.l,flength.l,mode.l,quality.l}
statement  conv_24s_16s                                       {sourceaddr.l,destaddr.l,flength.l,mode.l,quality.l}
statement  conv_24s_16s_im                                    {sourceaddr.l,destaddr.l,flength.l,mode.l,quality.l}
statement  conv_24m_8m                                        {sourceaddr.l,destaddr.l,flength.l,mode.l,quality.l}
statement  conv_24s_8s                                        {sourceaddr.l,destaddr.l,flength.l,mode.l,quality.l}
statement  conv_16m_24m                                       {sourceaddr.l,destaddr.l,flength.l,mode.l,quality.l}
statement  conv_16s_24s                                       {sourceaddr.l,destaddr.l,flength.l,mode.l,quality.l}
statement  conv_8m_24m                                        {sourceaddr.l,destaddr.l,flength.l,mode.l,quality.l}
statement  conv_8s_24s                                        {sourceaddr.l,destaddr.l,flength.l,mode.l,quality.l}
statement  conv_8m_8s                                         {sourceaddr.l,destaddr.l,flength.l,mode.l,quality.l}
statement  conv_8m_16m                                        {sourceaddr.l,destaddr.l,flength.l,mode.l,quality.l}
statement  conv_8m_16s                                        {sourceaddr.l,destaddr.l,flength.l,mode.l,quality.l}
statement  conv_8s_8m                                         {sourceaddr.l,destaddr.l,flength.l,mode.l,quality.l} ; mode: -1=right, 0=both, 1=left quality: 0=fast
statement  conv_8s_8s                                         {sourceaddr.l,destaddr.l,flength.l,mode.l,quality.l}
statement  conv_8s_16m                                        {sourceaddr.l,destaddr.l,flength.l,mode.l,quality.l} ; quality not used
statement  conv_8s_16s                                        {sourceaddr.l,destaddr.l,flength.l,mode.l,quality.l}
statement  conv_16m_8m                                        {sourceaddr.l,destaddr.l,flength.l,mode.l,quality.l}
statement  conv_16m_8s                                        {sourceaddr.l,destaddr.l,flength.l,mode.l,quality.l}
statement  conv_16m_16m                                       {sourceaddr.l,destaddr.l,flength.l,mode.l,quality.l}
statement  conv_16m_16s                                       {sourceaddr.l,destaddr.l,flength.l,mode.l,quality.l}
statement  conv_16m_32s                                       {sourceaddr.l,destaddr.l,flength.l,mode.l,quality.l}
statement  conv_16s_32s                                       {sourceaddr.l,destaddr.l,flength.l,mode.l,quality.l}
statement  conv_16s_8m                                        {sourceaddr.l,destaddr.l,flength.l,mode.l,quality.l}
statement  conv_16s_8s                                        {sourceaddr.l,destaddr.l,flength.l,mode.l,quality.l}
statement  conv_16s_16m                                       {sourceaddr.l,destaddr.l,flength.l,mode.l,quality.l}
statement  conv_32s_16m                                       {sourceaddr.l,destaddr.l,flength.l,mode.l,quality.l}
statement  conv_32s_16s                                       {sourceaddr.l,destaddr.l,flength.l,mode.l,quality.l}
statement  conv_16s_16s                                       {sourceaddr.l,destaddr.l,flength.l,mode.l,quality.l}
statement  conv_16m_24s                                       {sourceaddr.l,destaddr.l,flength.l,mode.l,quality.l}
statement  conv_16s_24m                                       {sourceaddr.l,destaddr.l,flength.l,mode.l,quality.l}
statement  conv_24m_16s                                       {sourceaddr.l,destaddr.l,flength.l,mode.l,quality.l}
statement  conv_24s_16m                                       {sourceaddr.l,destaddr.l,flength.l,mode.l,quality.l} ; *!
statement  conv_8m_24s                                        {sourceaddr.l,destaddr.l,flength.l,mode.l,quality.l}
statement  conv_8s_24m                                        {sourceaddr.l,destaddr.l,flength.l,mode.l,quality.l}
statement  conv_24m_8s                                        {sourceaddr.l,destaddr.l,flength.l,mode.l,quality.l}
statement  conv_24s_8m                                        {sourceaddr.l,destaddr.l,flength.l,mode.l,quality.l} ;*!
statement  conv_24s_24m                                       {sourceaddr.l,destaddr.l,flength.l,mode.l,quality.l} ;*!
statement  conv_24m_24s                                       {sourceaddr.l,destaddr.l,flength.l,mode.l,quality.l}
statement  intel2motorola                                    {sourceaddr.l,destaddr.l,wlength.l}
statement  intel2motorola24                                   {sourceaddr.l,destaddr.l,flength.l}
statement  unsigned2signed8                                   {sourceaddr.l,destaddr.l,blength.l}
statement  unsigned2signed16                                  {sourceaddr.l,destaddr.l,wlength.l}
statement  unsigned2signed24                                  {sourceaddr.l,destaddr.l,slength.l}
statement  resample                                           {sourceaddr.l,destaddr.l,sourcelength.l,ratio.l,base.l,stack.l}
function   ce_resample                                        {sourceaddr.l,destaddr.l,sourcelength.l,ratio.l,*brain.ce_ratebrain}
file       convert.include.bb2
function   con_wflip                                          {value.w}
function   con_lflip                                          {value.l}
function   con_extended2long                                  {exptr.l}
statement  con_long2extended                                  {in.l,exptr.l}
function   con_hex2integerx                                   {hexa.s}
function   con_midi2fine                                      {fine.l}
function   con_fine2midi                                      {fine.l}
function   con_pan2midi                                       {pan.l}
function   con_midi2pan                                       {pan.l}
function   con_midi2gain                                      {gain.l}
function   con_gain2midi                                      {gain.l}
function   con_note2string                                    {midinote.l}
function   con_longmul                                       {x.l,a.l,b.l}
function   value                                              {input$}
function   slen                                              {a$}
file       ciatimer.include.bb2
statement  cia_start                                          {}      ; this starts timer firing
statement  cia_asm_free                                       {a.l,b.l,c.l}         ; this deallocates the timer resource and stops interrupt
function   cia_try{a.l,b.l,c.l}                                    ; attempt to allocate timer
statement  cia_settpm                                         {tpm.l}
function   cia_find                                           {preferA.w}
statement  cia_setsigtask                                     {sigflag.l,sigtask.l}
statement  cia_settimeindex_ptr                               {timeindex_ptr.l}
statement  cia_setcontrol_ptr                                 {cia_control_ptr.l}
statement  cia_setciafreq                                     {cia_freq.l}
statement  cia_free                                           {}
statement  timer_settpm                                       {tpm.l,resdiv.l}
statement  timer_close                                        {}
statement  timer_start                                        {}
statement  timer_stop                                         {}
function   timer_open                                         {timeindex_ptr.l,control_ptr.l,tpm.l,@resdiv.l}
function   timer_sigflag                                      {}
statement  timer_abort                                        {}
statement  timer_send                                         {x.l}
file       camd.include.bb2
statement  camd_free                                          {}
function   camd_init                                          {appname.s,timecounter_ptr.l,@sigtask.l,@signal.l}
statement  camd_remove_sender                                 {mp.l}
statement  camd_remove_receiver                               {mp.l}
function   camd_add_sender                                    {mp.l,clustername.s}
function   camd_add_receiver                                  {mp.l,clustername.s}
statement  camd_send                                          {mp.l,ptr.l,blength.l}
statement  camd_sendmsg                                       {mp.l,*msg.MidiMsg}
function   camd_receive                                       {}
function   camd_received_issysex                              {}
statement  camd_echo                                          {mp.l,@channel.l}
function   camd_sysex_length                                  {}
statement  camd_sysex_receive                                 {ptr.l,maxlength.l}
statement  camd_sysex_skip                                    {}
function   camd_msglength                                     {status.b}
function   camd_received_status                               {}
function   camd_received_mp                                   {}
function   camd_received_dat1                                 {}
function   camd_received_dat2                                 {}
function   camd_received_time                                 {}
function   camd_sigflag                                       {}
statement  camd_received_clear                                {}
macro      !camd_msglength                                     ; status
macro      !camd_send                                          ; mp,ptr,blength
macro      !camd_sendmsg                                       ; mp.l,*msg.MidiMSg
function   camd_nextcluster                                  {}
function   camd_nextcluster_name                             {}
function   camd_nextmidilink_sender                          {*mi.Node}
function   camd_nextmidilink_receiver                        {*mi.Node}
function   camd_nextmidi                                     {@lockit.l}
function   camd_nextmidi_name                                {}
function   camd_nextmidilink_name                            {}
file       autoexit.include.bb2
file       asm_audio.include.bb2
statement  asm_merge                                          {sourceaddr.l,destaddr.l,flength.l}
statement  asm_merge_m                                        {sourceaddr.l,destaddr.l,flength.l}
statement  asm_merge32                                        {sourceaddr.l,destaddr.l,flength.l}
statement  asm_merge32_LSR                                    {sourceaddr.l,destaddr.l,flength.l,LSR_val.l}
statement  asm_zerox                                          {destaddr.l,blength.l}  ; BUGIE !
statement  asm_zero16s                                        {destaddr.l,flength.l}
statement  asm_zero16m                                        {destaddr.l,flength.l}
statement  asm_zero                                           {destaddr.l,blength.l}
statement  asm_swap                                           {sourceaddr.l,destaddr.l,flength.l}
statement  asm_l2r                                            {sourceaddr.l,destaddr.l,flength.l}
statement  asm_r2l                                            {sourceaddr.l,destaddr.l,flength.l}
statement  asm_gain                                           {sourceaddr.l,destaddr.l,wlength.l,gain.l}
statement  asm_gain_clip                                      {sourceaddr.l,destaddr.l,wlength.l,gain.l}
statement  asm_ffade_clip16s                                  {sourceaddr.l,destaddr.l,flength.l,*params.asm_fadeparams}
statement  asm_ffade_clip16m                                  {sourceaddr.l,destaddr.l,flength.l,*params.asm_fadeparams}
statement  asm_fade_clip16s                                   {sourceaddr.l,destaddr.l,flength.l,*params.asm_fadeparams}
statement  asm_fade_clip16m                                   {sourceaddr.l,destaddr.l,flength.l,*params.asm_fadeparams}
function   asm_seekpeak                                       {sourceaddr.l,bytelength.l,peak.l,reverse.l}
function   asm_getpeak                                        {sourceaddr.l,bytelength.l}
statement  asm_copymem                                        {sourceaddr.l,destaddr.l,blength.l}
function   asm_saw16s                                         {destaddr.l,flength.l,frequ.l,seed.l}
statement  asm_makesubsample16m                               {sourceaddr.l,modulo.l,blength.l,density.l,brain.l}
statement  asm_makesubsample16s                               {sourceaddr.l,modulo.l,blength.l,density.l,brain_ptr.l}
statement  asm_findlowhigh_sub_m                              {sourceaddr.l,d_length.l,pixheight.l,viewratio.l,subratio.l,zoom.l}
statement  asm_findlowhigh_sub_s                              {sourceaddr.l,d_length.l,pixheight.l,viewratio.l,subratio.l,zoom.l}
statement  asm_findlowhigh_reset                              {d_length.l,ratio.l}
function   asm_findlowhigh_m                                  {sourceaddr.l,dummy.l,pixheight.l,viewratio.l,s_length.l}
function   asm_findlowhigh_s                                  {sourceaddr.l,dummy.l,pixheight.l,viewratio.l,s_length.l}
file       arexx.include.bb2
function   arexx_quoted                                       {a.s}
function   arexx_nextarg                                      {}
function   arexx_sender                                       {}
statement  arexx_newmessage                                   {port.s,@message.s}
statement  arexx_addarg                                       {arg.s}
statement  arexx_addargquot                                   {arg.s}
statement  arexx_addargint                                    {value.l}
function   arexx_check                                        {}
function   arexx_send                                         {}
statement  arexx_close                                        {}
function   arexx_open                                         {port_name.s}
function   arexx_find                                         {port.s}
file       app.include.bb2
statement  app_win_add                                        {win.l,notify.l}
statement  app_win_rem                                        {win.l}
statement  app_showicon                                       {}
statement  app_hideicon                                       {}
statement  app_free                                           {}
function   app_init                                           {name.s,iconfile.s,menuname.s,popup_notify.l,icon_notify.l}
function   app_check                                         {}
function   app_event_id                                       {}
function   app_event_string                                  {}
function   app_event_x                                        {}
function   app_event_win                                      {}
function   app_event_y                                        {}
function   app_event_notify                                   {}
function   app_sigflag                                        {}
file       amiblitz_internal.bb2
file       amiblitz.include.bb2
function   ab2_read_syslib                                    {dos.l,libnum.l}
function   ab2_read_ab2lib                                    {dos.l,libnum.l}
statement  ab2_getlib                                         {filename.s}
statement  ted_addab2_getem                                   {path.s,@*ted.tuited}
statement  ted_addab2                                         {path.s,@*ted.tuited}
file       ahi_library.include.bb2
statement  AHI_setpubscreen                                   {pubscreen.s}
function   AHI_request_alloc                                  {x.l,y.l,xs.l,ys.l}
statement  AHI_request_free                                   {}
function   AHI_request                                        {}
function   AHI_requester_modeid                               {}
function   AHI_requester_mixfreq                              {}
statement  AHI_requester_setmodeid                            {modeid.l}
statement  AHI_requester_setmixfreq                           {mixfreq.l}
statement  AHI_audio_free                                     {}
function   AHI_audio_alloc                                    {pf.q}
function   AHI_getattr                                        {mode.l,attr.l,result.l,n.l}
function   AHI_checkdriver                                    {mode.l}
function   AHI_outsize                                        {mode.l}
function   AHI_insize                                         {mode.l}
function   AHI_name_driver                                    {mode.l}
function   AHI_name_output                                    {mode.l,output.l}
function   AHI_name_input                                     {mode.l,input.l}
function   AHI_inputs                                         {mode.l}
function   AHI_outputs                                        {mode.l}
function   AHI_isduplex                                       {mode.l}
function   AHI_minmixfreq                                     {mode.l}
function   AHI_maxmixfreq                                     {mode.l}
function   AHI_audio_control                                  {tag.l,value.l}
function   AHI_mix_freq                                       {}
statement  AHI_setmonitorvol                                  {vol.q}
statement  AHI_setinput                                       {input.l}
statement  AHI_setoutput                                      {output.l}
function   AHI_loadsound                                      {buff.l}
statement  AHI_setfreq                                        {channel.w,samplerate.l}
statement  AHI_setvol                                         {channel.w,vol.q,pan.q}
statement  AHI_update_ASM                                     {}
statement  AHI_stopengine                                     {}
statement  AHI_flush                                          {}
statement  AHI_start                                          {}
function   AHI_startengine                                    {rec.w,samplerate.l}
function   AHI_startgrab                                      {samplerate.l}
function   AHI_grab                                           {}
statement  AHI_stopgrab                                       {}
statement  AHI_reset_recstart                                 {}
function   AHI_get_recstart                                   {}
function   AHI_get_recflength                                 {}
statement  AHI_close                                          {}
statement  AHI_free                                           {}
function   AHI_init                                           {}
function   AHI_open                                           {modeid.l,buffersize.l,sampleformat.l,samplerate.l,latency.l}
function   AHI_bytes2samps                                    {bytes.l}
function   AHI_sampleform                                     {channels.w,bits.w,signed.w}
function   AHI_timeindex                                      {}
statement  AHI_settimeindex                                   {timeindex.l}
file       ahi_device_sm.include.bb2
function   AHI_bytes2samps                                    {bytes.l}
function   AHI_next_buffer                                    {}
function   AHI_next_ptr                                       {}
function   AHI_next_size                                      {}
function   AHI_next_fsize                                     {}
function   AHI_sampleform                                     {channels.w,bits.w,signed.w}
function   AHI_timeindex                                      {}
statement  AHI_set_timeindex                                  {timeindex.l}
statement  AHI_stop                                           {}
statement  AHI_close                                          {}
function   AHI_open                                           {unit.l,buffersize.l,sampleformat.l,samplerate.l,ownbuffers.w}
statement  AHI_wait                                           {}
statement  AHI_rec_wait                                       {}
function   AHI_check                                          {}
statement  AHI_wait_finish                                    {}
function   AHI_isquiet                                        {}
function   AHI_write                                          {blength.l}
function   AHI_read                                           {ptr.l,blength.l}
function   AHI_rec_start                                      {ptr.l,blength.l}
statement  AHI_balance                                        {balance.l}
statement  AHI_volume                                         {gain.l}
function   AHI_getpeak                                        {startaddr.l,flength.l,visual.l}
function   AHI_getvisual_out                                  {}
statement  AHI_setvisual                                      {smoothness.l,norm.l,square.w}
file       ahi_device.include.bb2
function   ahi_bytes2samps                                    {bytes.l}
;%Syntax: samps.l = ahi_bytes2samps {bytes.l}                                            *
;%Function: Return the number of sampleframes for the given number of bytes.             *
;%Inputs: bytes.l - Number of bytes                                                      *
;%Result: samps.l - Number of sampleframes                                               *
;%Bugs:                                                                                  *
;%Example:                                                                               *
;%SeeAlso:                                                                               *
function   ahi_getsampleform                                  {channels.w,bits.w,signed.w}
;%Syntax: AHI_ST.l = ahi_getsampleform {channels.w,bits.w,signed.w}                      *
;%Function: Returns the AHI sampleformat code for the given audio specs                  *
;%Inputs: channels.w - Number of channels, 1 (=mono) or 2 (=stereo)                      *
function   ahi_stream_next_buffer                             {}
function   ahi_stream_next_ptr                                {}
function   ahi_stream_next_size                               {}
function   ahi_stream_next_fsize                              {}
function   ahi_stream_timeindex                               {}
statement  ahi_stream_settimeindex                            {timeindex.l}
statement  ahi_stream_wait                                    {}
function   ahi_stream_check                                   {}
statement  ahi_stream_wait_finish                             {}
function   ahi_stream_isquiet                                 {}
function   ahi_stream_write                                   {@blength.l}
statement  ahi_stream_free                                   {}
statement  ahi_stream_close                                  {}
statement  ahi_stop                                           {}
statement  ahi_stopsound                                      {snd.l}
statement  ahi_freesound                                      {snd.l}
statement  ahi_freesound_all                                  {}
statement  ahi_close                                          {}
function   ahi_open                                           {unit.l}
function   ahi_sigflag                                       {}
function   ahi_stream_init                                    {buffersize.l,channels.l,bits.l,samplerate.l}
function   ahi_createsound                                    {snd.l,blength.l,samplerate.l,channels.l,bits.l}
statement  ahi_playsound                                      {snd.l,@gain.q,@pan.q,@samplerate.l}
function   ahi_sound_find                                    {}
statement  ahi_setfreq                                        {snd.l,samplerate.l}
statement  ahi_setvolume                                      {snd.l,gain.q} ; gain: 0 = mute, 1=full gain
statement  ahi_setpan                                         {snd.l,pan.q} ; pan: 0 = left, .5 = middle, 1 = right
function   ahi_loadsound                                      {snd.l,filename.s}
function   ahi_stream_open                                    {filename.s,buffersize.l,@speed.l}  ; buffersize in ms!!!
function   ahi_stream_do                                      {}
statement  ahi_stream_jump                                   {ms.l}
statement  ahi_stream_setloop                                 {startpos.l,@endepos.l}
