| TIP: Click on subject to list as thread! | ANSI |
| echo: | |
|---|---|
| to: | |
| from: | |
| date: | |
| subject: | Poetry-smooth scrolling |
> BN> Yeah, guess so.. I'll have a look for it and post it (it uses some of
> BN> my routines i have in shared libs (my own) so I gotta extract them)
> BN> 2nd Dowh.
>
> Thanks.. I appreciate the effort.. :)
Okay, I'll get to it. :)
> >> BN> Hope things go well for ya.
> >> Indeed.. it's a rare girl that would appreciate the effort.. :)
>
> BN> Yeah, that's what I've sadly decided. :( :)
>
> Oh I don't know now, I read in the paper about 3 weeks
> back, a girl was working at Sausage software (I think
> that's them) the did hotdog a html editor, anyway she's the
> resident whip on JAVA, and she has a comp sci degree..
>
> I'm sure she'd appreciate the effort.. after laughing at it.. :(
hahahaheheheheh... Yeah, prolly. :)
Here tis:
BIRDS.DAT is the text to be displayed in the format of a raw memory format
(up to 64k), I used a QBasic program to convert a text file to a BSV.
___-------------- begin fing ---------------------
/********************************************************************
smooth scrolling in text mode, by Melon/DEMOBLAST, aka Ben Nolan
use this wherever, but credit me and you'll have good luck with the
opposite sex. :)
********************************************************************/
?include "FILE.H--"
?include "DEMOBLST.H--"
word virt1;
word line,row;
word textsize;
scrolldown()
word a,b;
{
a=12;
loop (a){
textstart(row);
row+=80;
if (line>=15) line=0;
b=15;
loop (b){
{at}WAITVSYNC();
line++;
pantext(line);
}
}
}
scrollup()
int a,b;
{
a=12;
loop (a){
textstart(row);
row-=80;
if (line<=0) line=15;
b=15;
loop (b){
{at}WAITVSYNC();
line--;
pantext(line);
}
}
}
part1()
word tog;
{
line=0;
// line is the pan register (0-12)
// row is the text start
textsize = readfile("birds.dat",virt1,0,64000);
copyfar(0xb800,0,virt1,7,textsize-8);
line=0;
row=0;
tog=0;
MAXKEYRATE();
do{
IF ({at}BIOSEKEYCHECK()!=0) AL={at}BIOSEREADKEY();
IF (AH==0x48) scrollup();
if (AH==0x50) scrolldown();
IF (AX==k_esc) tog=1;
}while (tog==0);
}
pantext(int offset)
{
DX=0x3d4;
AL=8;
$OUT DX,AL;
AL=offset;
$INC DX;
$OUT DX,AL;
}
textstart(int offset)
{
DX=0x3d4;
AL=0xD;
$OUT DX,AL;
AX=offset;
$INC DX;
$OUT DX,AL;
$DEC DX;
AL=0xC;
$OUT DX,AL;
AX=offset;
AL=AH;
$INC DX;
$OUT DX,AL;
}
main(){
virt1=GETMEM(4096);
killgfx();
part1();
killgfx();
FREEMEM(virt1);
}
Later,
Melon
___
þ JABBER v1.2 þ If at first you don't succeed, destroy all evidence that you tried.
--- Maximus 3.01
* Origin: Un Named BBS +644 235-8696 Official BBS of the MMCAC (3:771/1560)SEEN-BY: 633/267 270 @PATH: 771/1560 160 772/20 712/624 517 515 711/808 50/99 635/544 727 633/267 |
|
| SOURCE: echomail via fidonet.ozzmosis.com | |
Email questions or comments to sysop@ipingthereforeiam.com
All parts of this website painstakingly hand-crafted in the U.S.A.!
IPTIA BBS/MUD/Terminal/Game Server List, © 2025 IPTIA Consulting™.