--- hatari/src/includes/vdi.h 2019/04/01 07:12:44 1.1.1.3 +++ hatari/src/includes/vdi.h 2019/04/09 08:49:36 1.1.1.7 @@ -1,38 +1,43 @@ /* - Hatari + Hatari - vdi.h + + This file is distributed under the GNU Public License, version 2. or at + your option any later version. Read the file gpl.txt for details. */ #ifndef HATARI_VDI_H #define HATARI_VDI_H -#define MAX_VDI_WIDTH 1024 -#define MAX_VDI_HEIGHT 768 #define MAX_VDI_PLANES 4 +/* TOS needs width to be aligned to 128/planes and height to VDI text + * height (16 in 1-plane mode, 8 otherwise). Use TT hi-res as max + * (max size affects memory usage). + */ +#define MAX_VDI_WIDTH 1280 +#define MAX_VDI_HEIGHT 960 +/* next in-all-bitdepths aligned size up from smallest ST res. */ +#define MIN_VDI_WIDTH 384 +#define MIN_VDI_HEIGHT 208 -enum -{ - GEMRES_640x480, - GEMRES_800x600, - GEMRES_1024x768 -}; enum { - GEMCOLOUR_2, - GEMCOLOUR_4, - GEMCOLOUR_16 + GEMCOLOR_2, + GEMCOLOR_4, + GEMCOLOR_16 }; -extern Uint32 LineABase, FontBase; extern Uint32 VDI_OldPC; -extern BOOL bUseVDIRes; -extern int VDIWidth,VDIHeight,VDIRes; -extern int VDIPlanes,VDIColours,VDICharHeight; - -extern void VDI_SetResolution(int GEMRes, int GEMColour); -extern BOOL VDI(void); -extern void VDI_FixDesktopInf(void); -extern void VDI_LineA(void); +extern bool bUseVDIRes, bVdiAesIntercept; +extern int VDIWidth,VDIHeight; +extern int VDIRes,VDIPlanes; + +extern int VDI_Limit(int value, int align, int min, int max); +extern void VDI_SetResolution(int GEMColor, int WidthRequest, int HeightRequest); +extern void AES_Info(Uint32 bShowOpcodes); +extern void VDI_Info(Uint32 bShowOpcodes); +extern bool VDI_AES_Entry(void); +extern void VDI_LineA(Uint32 LineABase, Uint32 FontBase); extern void VDI_Complete(void); #endif /* HATARI_VDI_H */