>A library i need is not in my deflibsfile how can i add this Copy your desired lib to blitz2:userlibs/beta Quit and Start AB2.The new instructions should now available If they are not available this lib clashes with one of your other libs. Look in the file sorted_libnums.bb2 to find the number your lib have Look in file davidsdeflibs.txt if the libnum is free You can then temporary use libnum 200- (6 free places) num 2 and 3 for your libs /fd's that selden used. Use the librarymaster and rename the lib to one of the free nums and copy it to blitz2:userlibs/beta Now it is a good time to mail to the blitzlist so we can search a new number for this lib to have a chance to make a deflibs that have all usefull libs added. To convert Sources between diffrent libnums you can save your file in .ab2 Format (myfile.ab2 and reload it with the newdeflibs. The ab2 Format saves in asciii the advantage of this is you do not lost the compiler options.It has same features as BB2 format only problem is loadtime of large programs is slow If all of this tips you dont like create a copy of the file amiblitz2 rename it to amiblitz2_libold and use your own build deflibs here Set tooltype deflibs=mydeflibs The sense for this is because if function libs are out which are make with the standard deflib you can easy use this also the new functionlibrarys(in macros in .res files work optimal so) >Wy should i avoid libclushes (more libs at 1 number) ? AB2 load first deflibs and then acidlibs.BB2 load first acidlibs and then deflibs Sense wy AB2 do this is to get the patchlib dir working Only the first lib with the number is used.The other is not used and make only problems.There are: If you set the maximum object size in the compiler prefs to a higher value and there are two object entries with same name you cannot increase the maximum Object size also if you set both values to a higher value. If the Instruction help window in AB2 shows a instructions 2 times you see also that it clashes. >How do i manage my lib files in the best way Until a new libmanager is out there are still usefull tools on the Homepage at http://www.blitz-2000.co.uk/ deflibsman:(i sent to the list) It shows you a listview with the libs and his nums.You can sort by name/libnum so you find easy double libnums. Also for handling the patchlibs it is usefull because you can deactivate libs easy before you make deflibs: Note: You see no libnums from the userlibs/beta dir so you must check manually. Librarymaster If you want to change a libnum or split/make acidlibs/deflibs easy and you know that your dir is clashfree use the librarymaster It can also check clashes but has no feature to deactivate temporarly a lib. You can make a dir decompiled where the splittet acidlibs can stay in.You can then change files in this and create again. Note: the decompiled dir must empty if you split a file. >What sense have the patchlibs dir The patchlibs dir is used for developing/enhance libs so the user can easy check if the patchlib work better or not Because there are many unoffical bugfixes in the acidlibs out this helps to find problems in the offical Source in the fastest way.If you notice a problem from a lib in patchlib you can use the deflibman do a select all and remove step by step all patchlib and mail then the developer the exact problem. Later if all are happy with the acidlibs no file should stay in patchlibs.This is then used for users that want to add features to the acidlibs.And users who like it can install in patchlibs and test it.If they notice problems they can easy remove the lib and check without it.The developer of a patchfile should add large default object numbers for testing because you can not increase maximum objects in compilerprefs Thats the sense wy i have add the patchlibs dir. >How Liblinking work Blitz2 use chars 1-127 for normal text. If a char is higher than 127 then it read the second byte(if ACID uses 3 Bytes were wonderfull).So it get a num for ex. 0x9001 Blitz2 did a bclear #15 and the num is now 0x1001.Now it uses the number in that way that bit 14-6 are the libnum and bit 6-0 is intruction.So you get 256 libs with 128 instructions. On the libnum Blitz2 see which library he should link to the code. If you have for example a lib with more than 128 instructions and lib is at 200 as base the 130. command is interpret as command 2 on libnum 201.The problem is the linker want to add library 201.This lib doesent exist in real so it add nothing.If you use no commmand below 128 your lib is not linked and your executable crash >Does every entry in a newtype > structure also count as one global var? No A newtype var uses only a pointer to it in the globvar or locvar space String variable use also a pointer to the stringspace. dims also use only 1 pointer A newtpye is limited to 32767 Bytes.If it greater the compiler shows type too big Quest: When you install the new libs like memlib.obj staticslib.obj or varslib.obj Do you have to delete the old one (in blitzlibs:stystem) ?. Answer: Newer Blitzbasic Version dont use this files in blitzlibs/systems so this should not include in the libman if you create deflibs To see if you have a new blitzbasic version look if you have the file acidlibs (Introduced in BUM8) If so the system dir is not need because all the files are in acidlibs When you create a new deflibs with libman you must select all files in patchlibs Quest: I see no slider in the right bookmark window Answer: Increase in prefs label size to min 18 with topaz 8 font Quest: On WINUAEJIT when runtimeerrorcheck is on ,programs run extreme slow What can i do ? ANswer Try disable the JIT (cpu nocache) for now This is a JIT Problem because it flushes the cache every trap I try to fix this Quest: My calculator say 11888.1 AB2 and BB2 say 11888.0939 Wy this a.f=11.9 b.f=999 Print a.f*b.f Answer This is because 32bit floats have a accuracy of 6 numbers (0.001%) ffp.But with FPU you have intern 64bit accuracy so this give with 32bit vars better results than ffp in complex Terms look wy a=b*c+d a=a/4 64bit=32bit*32bit b*c 64bit=64bit+32bit res(b*c)+d If in the next term the result of the above (a) come after the = then the 64bit is not round down to 32bit value 64bit=64bit/4 Constants are double float in AB2 but using double float for vars is selden used and hard to implememt in AB2 (3d graphicchips use 32 bit floats.)So the replace for the .f is single FPU. Also the FPU result is convert when print to ffp (because extern libs only support this) so accuracy is same like ffp when you see the number But if you want program in AB2 Assembler you can use 64bit float vars