We are porting a GUI Application from 32 bit to 64 bit using ftn95 version 8.10.0. When linking the 64 bit executable it turns out that several symbols are missing, e.g. RELEASE_SCREEN_BLOCK@ RESTORE_SCREEN_BLOCK@ PCX_TO_SCREEN_BLOCK@ SCREEN_BLOCK_TO_PCX@ GET_SCREEN_BLOCK@ CREATE_SCREEN_BLOCK@ GET_MOUSE_POSITION@ RECTANGLE@ DRAW_TEXT@ DELETE_POLYGON_DEFINITION@ POLYLINE@ FILL_POLYGON@ CREATE_POLYGON@ FILL_RECTANGLE@ GET_MOUSE_BUTTON_PRESS_COUNT@ TEXT_MODE@ GET_GRAPHICS_RESOLUTION@ GET_GRAPHICS_MODES@ VGA@ DRAW_LINE@ This did not occur when linking the corresponding 32 bit binary.
Now we tried to get rid of the problems with symbols DRAW_LINE@ and GET_GRAPHICS_MODES@ by adding the lines
C_EXTERNAL DRAW_LINE@ '__win_draw_line'(REF,REF,REF,REF,REF)
C_EXTERNAL GET_GRAPHICS_MODES@ '__win_get_graphics_modes'(REF,REF,
*REF,REF,REF)
to the code (having had a look into file dbos.ins of the ftn95 installation). We first added these lines to small test examples where it worked ok meaning that we got rid of the missing symbols and had no other symbol missing.
However, when doing the same to our GUI code, we got rid of the symbols DRAW_LINE@ and GET_GRAPHICS_MODES@, but there were two other symbols missing, namely __WIN_DRAW_LINE and __WIN_GET_GRAPHICS_MODES.
We have no idea, why this happens to our GUI code and **not **to our small test examples and would be grateful for any hint. Maybe it is the size of the GUI app which is much bigger than the sizes of our test examples.
Now we substituted symbol DRAW_LINE@ by DRAW_LINE_BETWEEN@. This helped in so far that we could display a first polygon with our GUI appplication.
However, we do not know how to proceed with symbol GET_GRAPHICS_MODES@.
We did not yet think about how to proceed with all the other missing symbols mentioned above.
Regards, Dietmar