This commit is contained in:
Frater 2017-09-24 01:45:36 +02:00
commit 43352ff262
1291 changed files with 220976 additions and 0 deletions

75
ENDSCRL/ASMYT.ASM Normal file
View file

@ -0,0 +1,75 @@
IDEAL
MODEL large
P386
CODESEG
PUBLIC C waitvr
PROC C waitvr
mov dx, 03dah
@@loop1:
in al, dx
test al, 08h
jnz @@loop1
@@loop2:
in al, dx
test al, 08h
jz @@loop2
ret
ENDP
PUBLIC C setstart
PROC setstart
ARG start:word
push bp
mov bp,sp
mov bx, [start]
mov dx, 03d4h
mov al, 0dh
mov ah, bl
out dx, ax
mov al, 0ch
mov ah, bh
out dx, ax
pop bp
ret
ENDP
PUBLIC C setrgbpalette
PROC C setrgbpalette
ARG pal:word, r:word, g:word, b:word
mov dx, 3c8h
mov ax, [pal]
out dx, al
inc dx
mov ax, [r]
out dx, al
mov ax, [g]
out dx, al
mov ax, [b]
out dx, al
ret
ENDP
ENDS
SEGMENT asdf byte use16 private 'FAR_DATA'
PUBLIC C font
LABEL font
INCLUDE 'fona.inc'
ENDS
END

BIN
ENDSCRL/ASMYT.OBJ Normal file

Binary file not shown.

BIN
ENDSCRL/ENDSCRL.DSK Normal file

Binary file not shown.

BIN
ENDSCRL/ENDSCRL.EXE Normal file

Binary file not shown.

BIN
ENDSCRL/ENDSCRL.PRJ Normal file

Binary file not shown.

118
ENDSCRL/ENDSCROL.TXT Normal file
View file

@ -0,0 +1,118 @@
Lerto has coded this hilariously fantastic
piece of non-interactive software
entertainment soon available to you all!
There has been quite a fucking lot of
job to be done here and Mika's phone
has been ringing helluva lot.
The guys' daily rhythm has gone haywire, as
they yesterday went to sleep at 6:00 a.m.
and woke up at 13:00. Farkin' great...
Now Pixel (who seemingly Sucks?) has a giant
job to be done: to perfectly smooth a
37-frame animation of a bald man's face
saying "I am not an atomic playboy" ... guess
it'll take days to finish... at least it will
keep him out of our way ;-).
- - -
And now do you know what is
coming up, kids?
A font test!!! Yeah!!!!
Here goes:
abcdefghijklmnopqrstuvwxyz
ABCDEFGHIJKLMNOPQRSTUVWXYZ
1234567890!?;:-,.=+
(why certainly I know my ABC...)

2813
ENDSCRL/FONA.INC Normal file

File diff suppressed because it is too large Load diff

BIN
ENDSCRL/FONA.LBM Normal file

Binary file not shown.

BIN
ENDSCRL/FONA.UH Normal file

Binary file not shown.

BIN
ENDSCRL/LBM2U.EXE Normal file

Binary file not shown.

125
ENDSCRL/MAIN.C Normal file
View file

@ -0,0 +1,125 @@
#include <dos.h>
#include <io.h>
#include <fcntl.h>
#include "i:\u2\dis\dis.h"
#define FONAY 30
extern void waitvr(void);
extern void setstart(int);
extern void setrgbpalette(int p, int r, int g, int b);
extern char far font[31][1500];
char *fonaorder="ABCDEFGHIJKLMNOPQRSTUVWXabcdefghijklmnopqrstuvwxyz0123456789!?,.:<3A><>()+-*='";
int fonap[256];
int fonaw[256];
char tbuf[FONAY][640];
main() {
dis_partstart();
dis_waitb();
asm mov ax, 0eh
asm int 10h // 640x350 16c
asm mov ax, 9h
asm mov dx, 3d4h
asm out dx, ax
setrgbpalette(1,20,20,20);
setrgbpalette(2,40,40,40);
setrgbpalette(3,60,60,60);
setrgbpalette(4,60,60,60);
setrgbpalette(5,60,60,60);
setrgbpalette(6,60,60,60);
setrgbpalette(7,60,60,60);
setrgbpalette(8,60,60,60);
setrgbpalette(9,60,60,60);
setrgbpalette(10,60,60,60);
setrgbpalette(11,60,60,60);
setrgbpalette(12,60,60,60);
setrgbpalette(13,60,60,60);
setrgbpalette(14,60,60,60);
setrgbpalette(15,60,60,60);
init();
while(!dis_exit())
{
if(dis_waitb()==1) dis_waitb();
do_scroll();
}
}
char far text[64000]="Testing Testing\0PIXEL SUCKS\0ABCDEFGHIJKLMNOPQRSTUVWXYZ\0abcdefghijklmnopqrsuvwxyz\0Testing Testing\0PIXEL SUCKS\0ABCDEFGHIJKLMNOPQRSTUVWXYZ\0abcdefghijklmnopqrsuvwxyz\0Testing Testing\0PIXEL SUCKS\0ABCDEFGHIJKLMNOPQRSTUVWXYZ\0abcdefghijklmnopqrsuvwxyz\0Testing Testing\0PIXEL SUCKS\0ABCDEFGHIJKLMNOPQRSTUVWXYZ\0abcdefghijklmnopqrsuvwxyz\0Testing Testing\0PIXEL SUCKS\0ABCDEFGHIJKLMNOPQRSTUVWXYZ\0abcdefghijklmnopqrsuvwxyz\0Testing Testing\0PIXEL SUCKS\0ABCDEFGHIJKLMNOPQRSTUVWXYZ\0abcdefghijklmnopqrsuvwxyz\0";
char *tptr=text;
int tstart=0,chars=0;
int mtau[8]={128,64,32,16,8,4,2,1};
char textline[100];
char scanbuf[4][80];
do_scroll()
{
static int yscrl=0;
static int line=0;
int a,b,c,x,y,m;
if(line==0)
{
for(a=0,tstart=0,chars=0;*tptr!='\n';a++,chars++)
{
textline[a]=*tptr;
tstart+=fonaw[*tptr++]+2;
}
textline[a]=*tptr++; tstart=(639-tstart)/2;
}
memset(scanbuf,0,80*4);
for(a=0,x=tstart;a<chars;a++,x+=2) for(b=0;b<fonaw[textline[a]];b++,x++)
{
m=mtau[x&7];
if(font[line][fonap[textline[a]]+b]&1)
scanbuf[0][x/8]^=m;
if(font[line][fonap[textline[a]]+b]&2)
scanbuf[1][x/8]^=m;
if(font[line][fonap[textline[a]]+b]&4)
scanbuf[2][x/8]^=m;
if(font[line][fonap[textline[a]]+b]&8)
scanbuf[3][x/8]^=m;
}
outport(0x3c4,0x0102); memcpy(MK_FP(0x0a000,80*yscrl),scanbuf[0],80); memcpy(MK_FP(0x0a000,80*(yscrl+401)),scanbuf[0],80);
outport(0x3c4,0x0202); memcpy(MK_FP(0x0a000,80*yscrl),scanbuf[1],80); memcpy(MK_FP(0x0a000,80*(yscrl+401)),scanbuf[1],80);
outport(0x3c4,0x0402); memcpy(MK_FP(0x0a000,80*yscrl),scanbuf[2],80); memcpy(MK_FP(0x0a000,80*(yscrl+401)),scanbuf[2],80);
outport(0x3c4,0x0802); memcpy(MK_FP(0x0a000,80*yscrl),scanbuf[3],80); memcpy(MK_FP(0x0a000,80*(yscrl+401)),scanbuf[3],80);
yscrl=(yscrl+1)%401;
line=(line+1)%FONAY;
setstart(yscrl*80+80*1);
}
init()
{
int x,y,a,b;
a=open("endscrol.txt",O_RDONLY); read(a,text,60000); close(a);
for(x=0;x<1500 && *fonaorder;)
{
while(x<1500)
{
for(y=0;y<FONAY;y++) if(font[y][x]) break;
if(y!=FONAY) break;
x++;
}
b=x;
while(x<1500)
{
for(y=0;y<FONAY;y++) if(font[y][x]) break;
if(y==FONAY) break;
x++;
}
//printf("%c: %i %i\n",*fonaorder,b,x-b);
fonap[*fonaorder]=b;
fonaw[*fonaorder]=x-b;
fonaorder++;
}
fonap[32]=1500-20;
fonaw[32]=16;
}

BIN
ENDSCRL/MAIN.OBJ Normal file

Binary file not shown.