X-Git-Url: http://deadsoftware.ru/gitweb?a=blobdiff_plain;f=src%2Fvga.c;h=3b4e06516a2794a295fba2e6f9fe641782123d29;hb=d4b977521ea85ba1d4a7e876aa73d072945c287d;hp=e06baf482dd3ed2a891a5e154a5ce38f434b54ac;hpb=a2115940e7643dcb1b87286f3d19fe95f7b79bd3;p=flatwaifu.git diff --git a/src/vga.c b/src/vga.c index e06baf4..3b4e065 100644 --- a/src/vga.c +++ b/src/vga.c @@ -25,6 +25,10 @@ #include #include "error.h" #include "view.h" +#include "memory.h" +#include "misc.h" + +#include // адрес экранного буфера @@ -45,6 +49,22 @@ char fullscreen = OFF; #define HQ 2 +vgaimg *V_getvgaimg (int id) { + int loaded = M_was_locked(id); + vgaimg *v = M_lock(id); + if (v != NULL && !loaded) { + v->w = short2host(v->w); + v->h = short2host(v->h); + v->sx = short2host(v->sx); + v->sy = short2host(v->sy); + } + return v; +} + +vgaimg *V_loadvgaimg (char *name) { + return V_getvgaimg(F_getresid(name)); +} + short V_init(void) { Uint32 flags = SDL_SWSURFACE|SDL_DOUBLEBUF|SDL_HWPALETTE; @@ -301,31 +321,26 @@ void V_remap_rect(int x,int y,int w,int h,byte *cmap) extern void *walp[256]; extern byte clrmap[256*12]; -void Z_drawfld(byte *fld, int bg) +void Z_drawfld (byte *fld, int bg) { byte *p = fld; - int x,y; - for (y=0; y