pascal.208peca.st,
-> #193, dejanr!->>> Bio je na Sezamu program Font Editor (direktorijum, ili
!->>> poruka?) kojim je moguće editovati/kreirati fontove .CHR za
!-> pascal
!->
!-> Vidim da ima jedan takav u prethodnoj konferenciji PC.PROG,
!-> uz poruku 4.343. Poslao ga je predragd.
Malo pre sam skinuo taj program ali u njegovom doc fajlu pise da se uz njega
dobija i nekoliko vec gotovih fontova, a od njih ni traga ni glasa.
So, kako se distribuiranje nekompletnih arhiva ne slaze sa Sezamovom politikom
mene zanima kako je ovo moglo da prodje. Kao obestecenje molio bih da neko
uploaduje i ove fontove!!!
CU P e C a
pascal.209ssokorac,
-> #201, peca.st ─┼┤ Jel' ima taj font editor mogucnost konverizije iz nekog drugog tipa
─┼┤* fonta u .chr font?
Ne, isključivo izmena i kreiranje .chr fontova.
pascal.210peca.st,
-> #205, ssokorac!-> ─┼┤ So, ti ga obavezno okaci pa da ga uzmem.
!->
!-> Pa, imaš već jedan u starom PC.PROG-u, 4.343.
!->
!-> (Sad će da pita kako da udje u stari pc.prog;).
Sokorac bre, sta ti imas protiv mene?
Kao prvo, ja sam skinuo taj bgifont.arj iz STAROG pc.prog bez problema.
Kao drugo, napisao sam zasto mi ne odgovara taj bgifont, odnosno on nije
kompletan pa sam ja trazio da mi neko posalje kompletnu arhivu.
Dakle, oladi bre malo, sta ti imas protiv (po)cetnika na sezamu???
CU P e C a
pascal.211pedjak,
-> #201, peca.st> Jel' ima taj font editor mogucnost konverizije iz nekog drugog tipa fonta
>* u .chr font?
Ne... Program omogućava samo editovanje postojećih i pravljenje
novih *.chr fontova.
BTW ima li neko *.chr fontove sa YU znacima ?
pascal.212pedjak,
-> #196, ssokorac> Ona dva koja je poslao skerl su sigurno namoćniji.
Onaj što sam ja poslao ima podršu iz HERCULES u grafičkom modu i
veliki broj drugih procedura i funkcija.
pedja
pascal.213pedjak,
-> #198, zokalezic> Ako li zna neko šta mu dođe DOS Error #8
Može li malo pobliže da objasniš kako ti se ovo javlja i gde ?
pascal.214pedjak,
Izvol'te jedan unit za manipulaciju za ZIP arhivama
zip.arjpascal.215pedjak,
A evo i jedan unit za manipulaciju sa ARJ arhivama.
arj.arjpascal.216pedjak,
-> #207, peca.st> U vezi toga da li ce fontovi koje tako kreiram raditi na Herc-u???
Hoće !
pascal.217dtadic,
-> #198, zokalezic>> Ako li zna neko sta mu dode DOS Error #8
Not enough memory.
DT
pascal.218vitez.koja,
-> #182, peca.st#=> Ima li neko neke *.chr fontove za Turbo Pascal osim ona
#=> cetiri sto se dobijaju
Bilo je nekoliko fontova na jednom racunaru u skoli...
pascal.219bulaja,
-> #208, peca.st│So, kako se distribuiranje nekompletnih arhiva ne slaze sa Sezamovom
│politikom mene zanima kako je ovo moglo da prodje. Kao obestecenje molio
│bih da neko uploaduje i ove fontove!!!
└───
Hoces li mozda sa slagom?
pascal.220drpr,
-> #219, bulaja-> Hoces li mozda sa slagom?
PA mozda nije sa šlagom ali meni je danas nikola poslao neke fontove
a nije ni slutio da su baš iz tog paketa! Slučajno sam pogledao
file listing i video da se fontovi potpuno slažu pa reko ajd
kad je peca.st toliko navalio da čoveku pošaljemo, pa možda
proda i svoj prvi program ;))) (pitam se da li je kupio svoj prvi program
za sad ) .
cope
chr.arjpascal.222drpr,
Pošto sam poslao neke fontove ajd sad ako može neko da baci par
yu *.chr fontova. Mislim da se ovo ne kosi sa pravilima jer se oni
u qp4.0 nula prave uz pomoć nekog dodatka koji je napravio neki brat
slovenac , a program je sw pa mislim da se ne kosi sa pravilima :)
(bear je pomenuo da ima negde oko 45 fontova pa bear javi se!!)
cope
pascal.223skerl,
-> #204, ssokorac> ─┼┤ Ona dva koja je poslao skerl su sigurno namocniji.
>
> Sad sam ih i probao. Prvi je nekako lepsi, ali i drugi ima
> neke svoje prednosti. AKo treba izabrati jednog onda
> svakako prvi (wcunits) jer tu ima i jos mnogo drugoh
> stvari osim misa. Jos jedan primerak za buduci pascal
> direktorijum :), zajednom sa onim chr editorom iz starog
> pc.proga.
Slazem se sa ssokorcem. Medjutim, ukoliko je moguce trebalo bi
staviti svima na raspolaganje oba, pa neka se koriste po
licnom nahodjenju. Koncepcijski su drugacije uradjeni i svaki
ima svojih prednosti. Onaj prvi je interesantniji zbog dodataka,
i samo zbog toga bi mogao da se preporucuje, ali je i drugi jako
dobro uradjen.
Moj savet je drzati ih u paru i koristiti po potrebi.
Pozdrav,
Skerl.
p.s. Uskoro jos nesto za novi pascal dir :)
pascal.224skerl,
-> #214, pedjak> Izvol'te jedan unit za manipulaciju za ZIP arhivama
Evo jos jednog unita za dezip.
Pozdrav,
Skerl.
DeZip v2.0 (C) Copyright 1989 by R. P. Byrne
The DeZip program included in this package is a Turbo Pascal (v5.0)
implementation of a decompressor for ZIP format archives created with
PKWare's PKZIP program.
The syntax for the DeZip program is:
DeZip [d:][\path\]zipname[.zip] [d:][\outpath] [filespec [...]]
where 'zipname' is the name of the ZIP file from which members are to be
extracted, 'outpath' is the name of a subdirectory into which all
extracted members will be placed, and 'filespec' represents a DOS file
specification (wildcards are allowed) limiting the extraction to one or
more matching file names.
The only command line parameter that is required is the name of the ZIP
file to be processed. If no filename extension is supplied, '.ZIP' is
assumed. If no outpath is specified, the current drive/subdirectory
will be used. If no filespec(s) are entered, '*.*' will be assumed.
Examples:
* Extract all '.pas' files from the OneFile.Zip archive. Place each
extracted member into the subdirectory e:\work:
DeZip OneFile.Zip e:\work *.pas
* Extract all files from the OneFile.Zip archive. Place all
extracted members into the current subdirectory:
DeZip OneFile
──────────────────────────────────────────────────────────────────────────
LICENSE
──────────────────────────────────────────────────────────────────────────
The DEZIP source and binaries ("software") are copyrighted. However,
I am distributing this software for free and you are licensed to use this
software without any charge.
Redistribution of this software is encouraged. Please do share it
with your friends, upload it to bulletin board systems, etc. However,
as I am making this software available for free, you must do the same.
You are not permitted by this license to request or accept any
remuneration of any kind for this software. This prohibition extends to
including my software with any other product or service for which money
is charged.
The only exceptions to this "don't charge for what I'm giving away
for free" restriction are as follows:
(1) Bulletin board systems or other electronic information services
are permitted to make this software available for download and charge
their customary fees, if any, for access to the service.
(2) Users groups and other not-for-profit organizations that
distribute this software may charge a reasonable fee to cover
duplication and related costs.
(3) There may be other situations not covered by this license where
some charge for distribution would be appropriate. Contact me and we'll
talk about it. But, this license does not authorize any such
distribution without express, written permission from me in advance.
You may distribute modified copies of my source and resulting
executables (including programs derived from mine in other languages or
for other operating systems) so long as you do so for free and pursuant
to a license no more restrictive than this one. You must state that
your software was derived from mine. But, please take credit for your
improvements and blame for your mistakes by making it as clear as
possible what changes you have made.
Except as provided above, if you do wish to charge for my software
or for any software derived from mine, then you must contact me for
prior permission. In short, if you're going to ask for money, then
we're going to share in whatever you receive. That's only fair.
This software is distributed without warranties of any kind,
express or implied, including, but not limited to, the implied
warranties of merchantability and fitness for a particular purpose.
Should you wish to contact me, I can be reached via U.S. Mail at
the following address:
R. P. Byrne
5 Twin Elm Terrace
Sparta, NJ 07871
rpb
07/31/89
dezip20.zippascal.225skerl,
-> #223, skerl> p.s. Uskoro jos nesto za novi pascal dir :)
Program za dump-ovanje tpu-ova za tp 6.0
INTRFC - Program to dump TPU files. (June, 1991)
Version 1.32: Dumps TP 6.0 and TPW 1.0 format files.
Written for the public domain by D.J. Murdoch (CIS 71631,122,
Fidonet 1:221/177.40, or Internet dmurdoch@watstat.waterloo.edu.)
INTRODUCTION
I started INTRFC because I got a library of Turbo Pascal 4.0
subroutines which had some errors in the documentation. One of the
functions wanted its arguments to be a special type, but the doc's
didn't tell me which one. TP gave me an error message saying I wasn't
using the right type, but wouldn't tell me which one to use either. I
decided to decode the TPU file and figure out what TP wanted. Once I
got started, it was hard to stop. So, I ended up writing INTRFC, which
printed out almost all the information you'll ever need about the
interface to a TPU unit.
When I upgraded INTRFC to TP 5.5 files, I got carried away again.
Version 1.2 dumped the complete file, not just the interface section.
The release of TP 6.0 made it necessary to upgrade again. This one
was easy: there aren't very many differences between version 5.5 and
6.0 .TPU files. I decided to fill in a couple of gaps in version 1.2,
and the current one dumps everything in the file. However, I made a few
mistakes in release 1.3; version 1.31 fixed those.
Finally, TP for Windows, version 1.0, came out. I was amazed when
version 1.31 almost worked; it turns out that the file format for TP6
and TPW1 is identical. There were a few errors in INTRFC 1.31 because
some of the Windows features had never showed up; the current release,
version 1.32, fills in those areas. I also cleaned up the display a
bit.
Because of the way INTRFC has been written, i.e. entirely by
guesswork, there are probably special cases that it doesn't handle
properly. That's one reason the source code is there - so other people
can fix up my mistakes. (And if you do, please tell me - reports from
users are how I found the bugs that version 1.31 fixed.)
The other reason I included source code is because it will serve as
a bit of documentation for the TPU file format: Borland will never
publish it. They want to be free to change the format, tweaking
performance when they can. (As you'll see if you study the .TPU design,
the famous "obsolete .TPU" problem doesn't come from the frequent format
changes; it's basic to the .TPU design itself. References to old SYSTEM
and other units just can't be updated.)
I hope others who may want to do completely different things to a
TPU file will benefit from reading the source. One difficulty they're
likely to have with a program written the way this one was is that
comments are almost non-existent. If you have any short questions about
it that you can't figure out, send them to me at one of the addresses
above.
USAGE:
INTRFC /options unit
where options are letters from the following:
B - emitted code Bytes
C - initialized Constant blocks
D - coDe blocks
E - routine Entry records
G - emitted Global const bytes
H - TPU Header
I - Implementation section (if $D was used in compilation)
L - proc/fn Locals (if $L was used in compilation)
M - source line number map
N - Names in interface
O - Object VMT records
R - Relocation records
S - Source file records
U - Unit list
V - Var blocks
W - Windows DLL list
A - turn All options on
Tpath - set the Turbo directory, where the TURBO.TPL and referenced
units are kept
Options are processed sequentially and toggle the display.
E.G. To see all but the relocation records in the system unit, use
INTRFC /AR /T\turbo SYSTEM
The default is just the names in the interface section.
LIMITATIONS
There are tons of limitations to INTRFC. It doesn't know how
to print any but the simplest types of constants. It won't print the
values of typed constants. Etc. Etc. Etc. If you want it to do
something differently just go ahead and change it! I recommend
compiling with all possible checks turned on, since it's pretty easy to
get lost in all those pointers.
FILES
The following files should be included in this package.
INTRFC DOC This file
TPU9 DOC TPU structure outline
INTRFC EXE The executable
INTRFC PAS Main program
GLOBALS PAS Program globals
HEAD PAS TPU header dumper
NAMELIST PAS Prints interface section
NAMETYPE PAS Type definitions for NAMELIST
BLOCKS PAS Routines for code blocks, etc.
SRCFILES PAS Prints source files & line numbers
RELOC PAS Prints relocation records
CODE PAS Code and const dumper
DUMP PAS Various dump routines
LOADER PAS Reads in .TPU and .TPL files
UTIL PAS Various utility routines
TEST1 PAS Test file
TEST1 INC Test include file
PARAMS PAS Parses parameters
THAT'S IT!
Have fun with INTRFC and Turbo Pascal. I'd like to hear of
any novel uses.
D.J. Murdoch
pascal.226paki,
-> #210, peca.st=> Dakle, oladi bre malo, sta ti imas protiv (po)cetnika na
=> sezamu???
Peco, samo polako. žovek nije ništa loše mislio (čak se i nasmejao u
poruci :). Bar se nadam da nije ;))
pascal.227dejanr,
-> #224, skerlNe znam šta bih, u ime Uprave i, verujem, korisnika rekao osim
VELIKO HVALA Ivanu (Skerl) na zaista zanimljivim datotekama koje
nam je poslednjih dana poslao!
pascal.228peca.st,
Malo pre sam nesto petljao u pascalu i zakljucio sledece:
Onaj mouse unit koji je dat u jednom od skorasnjih brojeva Racunara odbija da
radi zajedno sa svga256.bgi driverom! Naime, ja lepo inicijalizujem grafiku u
rezoluciji 640*480 i 256 boja i onda na primer nesto iscrtam i ono lepo radi.
E, a cim mu kazem ShowMouseCursor on se zbinguje, naime na ekranu se pojave
razne gluposti i slicno.
U cemu je problem????
CU P e C a
pascal.229ssokorac,
-> #210, peca.st ─┼┤ Dakle, oladi bre malo, sta ti imas protiv (po)cetnika na sezamu???
Hm, nećemo sad o tome ko bi trebao da 'oladi' ;). Anyway, početnici često
(stalno?:) pitaju kako se pristupa starim konferencijama pa sam se malo
našalio... Inače, kada ostaviš poruku to ne znači da su je svi istog
trenutka pročitali pa tako ni ja nisam mogao znati da tebi ne odgovara stari
bgi editor, već ti treba šlag, ovaj, fontovi. ;)
pascal.230ssokorac,
-> #225, skerl ─┼┤ INTRFC - Program to dump TPU files. (June, 1991)
Ovo je mnogo zgodno! Mislim da sada imamo dovoljno priloga za otvaranje
pascal direktorijuma... Bgi editor, mouse units, tpfast, intrfc, wcunits,
chr fontovi, a izgleda da će biti i još :).
pascal.231ssokorac,
-> #212, pedjak ─┼┤ Onaj što sam ja poslao ima podršu iz HERCULES u grafičkom modu i
─┼┤ veliki broj drugih procedura i funkcija.
Pa, eto, znači da budući pascal direktorijum već postaje pretesan :).
pascal.233peca.st,
-> #226, paki!-> Peco, samo polako. žovek nije ništa loše mislio (čak se i
!-> nasmejao u poruci :). Bar se nadam da nije ;))
Pa on je ono (Sad ce da pita...) napisao tako da sam ja video kako slaze
facu, ono otprilike, ' auuu, al je ovaj dosadan i glup..'. Mislim da to nije
u redu da onako napise!
CU P e C a
P.S. Osim toga, nije napisao :) nego ;) a razlika ipak postoji!
pascal.235peca.st,
-> #222, drpr!-> Pošto sam poslao neke fontove ajd sad ako može neko da baci
!-> par yu *.chr fontova.
Ja, kao sto vec napisah, imam cetiri cirilicna fonta za TP koji nisu *.chr.
Jedina ali velika mana im je sto nisu vektorski, pa imate samo jednu velicinu.
!-> (bear je pomenuo da ima negde oko 45 fontova pa bear javi
!-> se!!)
Bear, brzo se javljaj, jer sa 45 komada moze svasta da se uradi!!!
CU P e C a
pascal.236spantic,
-> #198, zokalezic> Ako li zna neko šta mu dođe DOS Error #8
Out of memory.
pascal.237dejanr,
-> #230, ssokorac>> Ovo je mnogo zgodno! Mislim da sada imamo dovoljno priloga za otvaranje
>> pascal direktorijuma...
Slažem se. Direktorijum je otvoren, verujem da će Bulaja sledećih
dana postepeno premeštati zanimljive priloge iz drugih direktorijuma
i konferencija u njega.
pascal.238skerl,
-> #227, dejanr> VELIKO HVALA
Nema na cemu. Nadam se da ce sve to koristiti.
A hvala i tebi za pascal dir. Redovno cemo ga puniti.
Pozdrav,
Skerl.
pascal.239ssokorac,
-> #227, dejanr ─┼┤ Ne znam šta bih, u ime Uprave i, verujem, korisnika rekao osim
─┼┤ VELIKO HVALA Ivanu (Skerl) na zaista zanimljivim datotekama koje
Pridružujem se. Stvarno, svaka čast, gde ih nabavljaš?
pascal.240lovro,
-> #222, drpr> Posto sam poslao neke fontove ajd sad ako moze neko da baci par
> yu *.chr fontova.
Ja sam sa Pingvina skinuo neke cirilicne fontove, ali nisu .chr, vec su
pravljeni u vidu .tpu fajla, pa nisu vektorski. Ne znam da li to ima na
Sezamu, jer sam novi i nisam stigao da pogledam.
Kad smo vec kod toga, postoji li neki spisak fajlova na Sezamu?
lovro
pascal.242skerl,
-> #239, ssokorac> ─┼┤ Ne znam sta bih, u ime Uprave i, verujem, korisnika
> rekao osim ─┼┤ VELIKO HVALA Ivanu (Skerl) na zaista
> zanimljivim datotekama koje
>
> Pridruzujem se. Stvarno, svaka cast, gde ih nabavljas?
Hvala, hvala, hvala.
Stari dobri TRICKLE. Jel te interesuje muzika u background-u
za SUPI? Dok on svira, ti picis svoje!
Pozdrav,
Skerl.
pascal.243kenza,
-> #226, paki [;> Bar se nadam da nije ;))
I ja mislim da nije (uopste)
pascal.245ssokorac,
-> #240, lovro ─┼┤ Kad smo vec kod toga, postoji li neki spisak fajlova na Sezamu?
FAQ. :) Otkucaj sledeće
..pad cl(d;)
..dir /a &
(ako hoćeš long opise onda dir /a /l &)
.pad do
pascal.247ssokorac,
-> #242, skerl ─┼┤ Stari dobri TRICKLE. Jel te interesuje muzika u background-u
─┼┤ za SUPI? Dok on svira, ti picis svoje!
Imam :). Ali, u svakom slučaju šalji za ostale. Za ovaj koji imam se
izdaje beraboy kao autor pa neću da šaljem, ali možda je ista stvar ;).
pascal.253ilazarevic,
-> #245, ssokorac> FAQ. :) Otkucaj sledeće
Ovo turiti u velkam bilten za početnike :)
pascal.254skerl,
-> #247, ssokoracPlay music in the background.
This unit gives you music capabilities with a BASIC syntax. The music
will be played in the background, so your program can continue with
other things. The music can also be played in the foreground.
This unit is very easy to use. There are only three procedures and one
function interfaced outwards. All the rest is automatic (installing,
uninstalling, interpreting the music, etc.)!
PlayMusic(string);
Start playing a string of music in the background. The string
is a normal character string containing music 'commands' as
described below. If there is already music playing, then it is
first shut off. All settings are reset to their default.
PlayMusicForeground(string);
Start playing a string of music, and wait for it to finish. If
there is already music playing, then it is first shut off. All
settings are reset to their default.
This procedure simply calls the "PlayMusic" procedure, and then
loops until MusicBusy (described later) is true.
MusicOff;
Turn music off.
if MusicBusy then ...
Return TRUE if there is currently music playing.
The music-commands syntax is BASIC compatible
THEORY.
This unit installs itself in the timertick interrupt $1C (procedure
"MusicNext"). With every timertick a buffer is checked. If there is any
music to be played in the buffer, then a single note from the buffer is
played.
This unit was inspired by a (buggy and incomplete) public domain unit
written by Michael Quinlan, 9/17/85.
J.C. Kessels
Philips de Goedelaan 7
5615 PN Eindhoven
Netherlands
*******************************************************************************
)
Interface
procedure MusicOff;
procedure PlayMusic(s : string);
procedure PlayMusicForeground(s : string);
function MusicBusy : boolean;
Implementation
tpmusic.zippascal.255skerl,
Da li nekome treba unit za upravljanje joystick-om?
Kratak je i upotrebljiv.
Pozdrav,
Skerl.
pascal.257zokalezic,
-> #213, pedjak>> Ako li zna neko šta mu dođe DOS Error #8
>
> Može li malo pobliže da objasniš kako ti se ovo javlja i
> gde ?
Pa pišem neki program koji petlja sa grafikom i tu imam opciju
za izlaz u dosshell.Evo i procedure
Procedure Izlaz_dos;
{$M $4000,0,0 }
Begin
CloseGraph;
TextColor(15);
Write('Otkucajte ');
TextColor(14);
Write('Exit ');
TextColor(15);
Write('za povratak u program');
Swapvectors;
exec('c:\command.com','');
swapvectors;
{$M 16384,0,655360}
grafika; <---------------------------- Procedura za inicijalizaciju
grafike
End;{Izlaz_dos}
Grešku javi tj. zaglupi komp kad dođe do exec dela tj napiše sve
poruke ' Otkucaj Exit za povratak u program ' napiše MS-DOS 5.0
al nikad ne da prompt. Ne zaglupi ga totalno nego samo briše ekran
i ispisuje poruku i tako u krug.
Pozdrav
Zoran
pascal.258pedjak,
Evo još jedan prilog novootvorenom PASCAL diru.Ovo je unit za
podršku XMS memorije i njeno korišćenje u sopstvenim programima.
Pisan je za TP 6.0. Pošto ima ljudi koji ne koriste TP 6.0
(među njima sam i ja), prepravio sam unit tako što sam sve
asm delove u procedurama prebacio u externe procedure tako da se
unit može kompajlirati i sa ranijim verzijama TP-a. Ako ima
zainteresovanih mogu da pošaljem i taj source.
Function XMMPresent: Boolean;
Function XMSErrorString(Error: Byte): String;
Function XMSMemAvail: Word;
Function XMSMaxAvail: Word;
Function GetXMMVersion: Word;
Function GetXMSVersion: Word;
Procedure MoveFromEMB(Handle: Word; Var Dest; BlockLength: LongInt);
Procedure MoveToEMB(Var Source; Handle: Word; BlockLength: LongInt);
Function EMBGetMem(Size: Word): Word;
Procedure EMBFreeMem(Handle: Word);
Procedure EMBResize(Handle, Size: Word);
Function GetAvailEMBHandles: Byte;
Function GetEMBLock(Handle: Word): Byte;
Function GetEMBSize(Handle: Word): Word;
Function LockEMB(Handle: Word): LongInt;
Procedure UnlockEMB(Handle: Word);
Function UMBGetMem(Size: Word; Var Segment: Word): Word;
Procedure UMBFreeMem(Segment: Word);
Function GetA20Status: Boolean;
Procedure DisableLocalA20;
Procedure EnableLocalA20;
Procedure DisableGlobalA20;
Procedure EnableGlobalA20;
Procedure HMAGetMem(Size: Word);
Procedure HMAFreeMem;
Function GetHMA: Boolean;
tp-xms.arjpascal.259ssokorac,
-> #254, skerl ─┼┤ Play music in the background.
Ovo nije isto, ono čudo je sviralo modove :). Thanks!
pascal.261ssokorac,
-> #255, skerl ─┼┤ Da li nekome treba unit za upravljanje joystick-om?
Ti baš znaš da iznenadiš čoveka :). Ma, što pitaš - šalji!
P.S. Da sam SysAdm dao bih ti mesec dana pretplate :).
pascal.265inesic,
-> #261, ssokorac> ─┼┤ Da li nekome treba unit za upravljanje joystick-om?
>
> Ti baš znaš da iznenadiš čoveka :). Ma, što pitaš - šalji!
>
> P.S. Da sam SysAdm dao bih ti mesec dana pretplate :).
TOOOO! Apsolutno podržavam predlog. Ivanu mesec dana
pretplate i još više dnevnog vremena. Ne verujem da će mu to
pokriti trošak za skupo plaćenu hrpu telefonskih impulsa za
silan UL, ali bi bilo lepo da bar neko u ovoj zemlji počne da
ceni nečiju želju da nešto radi i da mu to omogući. Ne
verujem da bi to bio prevelik gubitak za upravu SEZAMa.
SysAdme! Opet te prozivam da daš svoje mišljenje!
Ivica
pascal.266bulaja,
U novootvoreni PASCAL direktorijum prebacene se neke stvari koje su
poslednjih dana poslate u ovu conf, a narednih dana cu pogledati malo i
sta ima uz stare poruke. Veliko hvala Skerlu na prilozima za Pascal dir.
pascal.267skerl,
-> #255, skerlJOYSTICK Unit for Turbo Pascal (JSTICK.ARC)
Public Domain by JonSoft Technologies Inc.
This ARCHIVED file should contain -
JOYSTICK.PAS - the JOYSTICK unit source code
JOYSTICK.TPU - the JOYSTICK unit for TP 5.x (see notes!)
JOYDEMO.PAS - joystick demonstration program
JOYSTICK.DOC - this file!
UP&CMING.DOC - Up & Coming releases from JonSoft Inc.
COPYRITE.DOC - full copyright agreement
** NOTE - JOYSTICK.TPU is for version 5.x (5.0/5.5 etc) of Turbo Pascal
and WILL NOT WORK with Version 4.x without recompilation.
To use with version 4.x, load JOYSTICK.PAS into the editor and recompile it
to disk. This unit WILL NOT WORK with version 3.x or below!!!!!
*** Using JOYSTICK ***
1.1 Initialization
If you are planning to use the joystick unit to retrieve X,Y, and button
values from the joystick only, there is no need to call either of the
initialization procedures.
If you plan to use to 8-position converter routines (HORIZ, VERT- see
procedure listings) then you should call either of the two initialization
procedures.
1.2 Procedure listing
FastInitJS
Initializes the joystick without any messages and without requiring the
joystick to be moved into the corners and the middle. This procedure is
intended only for your personal programs, as not all joysticks will work with
this procedure and very few will work with some adjusting of the joystick.
BetterInitJS ( Range : byte )
Initializes the joystick MUCH more accurately than FastInitJS. Asks the
user if he or she is using a joystick, and sets the variable Joyst to TRUE
or FALSE accordingly. If a joystick is present, asks the user to place the
the joystick in the upper-right-hand corner, center, and lower-left positions,
pressing a button each time.
RANGE specifies the fraction of total distance that the joystick
should approximately cover before producing a reading other than zero in the
Horiz and Vert procedures. For example, a range of 2 specifies that the
joystick should travel 1/2 of the distance from the center to a direction
before producing a reading.
JoyX function (returns BYTE)
Returns the X-coordinate of the joystick.
JoyY function (returns BYTE)
Returns the Y-coordunate of the joystick.
Button1 function (returns BYTE)
Returns 1 if button 1 is pressed, otherwise 0.
Button2 function (returns BYTE)
Returns 1 if button 2 is pressed, otherwise 0.
Horiz function (returns SHORTINT)
Returns -1 if the joystick is LEFT of the center, 0 if it is in the center,
and 1 is it is RIGHT of the center.
Vert function (returns SHORTINT)
Returns -1 if the joystick is ABOVE the center, 0 is it is in the center,
and 1 if it is BELOW the center.
Horiz and Vert are useful in arcade games and other programs where the
program must only know which general direction the joystick is pointing.
1.3 Variables
CentX - byte; returns the X-center of the joystick; set on
initialization.
CentY - byte; returns the Y-center of the joystick; set on
initialization.
JoySt - boolean; return TRUE if a joystick was found upon initialization,
FALSE otherwise. Defaults to TRUE.
LET ME KNOW!!!!
Let me know what you think of this and other JonSoft products. Write to:
JonSoft Technologies Inc.
741 Daffodil Way
Concord, CA 94518-2341
Or, write to Jonathan Suite via E-Mail :
CompuServe : 72377,2463
PC-Link : FATHER JON
Prodigy : VPFT10B
tpjoystk.zippascal.268skerl,
-> #258, pedjak*******************************************************************************
* xmsLib *
* xms library for TP6.0, Loewy Ron 1991. *
* Last update : Aug. 11, 1991 *
*******************************************************************************
Introduction
------------
xmsLib implements the XMS 2.0 API for Turbo-Pascal 6.0. This package is
a first step in a project I took that will allow me to use virtual memory
references for data in turbo pascal, without the regular limitations of
640K. I have used this library in some in house projects, But I would like
to comment that I have used heavily only the extended memory allocation
functions. (I have not used the UMB functions). The source of information
for the XMS API was the XMS specification Ver 2.0 from July 19, 1988,
published and copyrighted by :
Copyright (c) 1988, Microsoft Corporation, Lotus Development
Corporation, Intel Corporation, and AST Research, Inc.
procedure detectXMS; { look for xms existance, and sets global library
variables }
procedure setXMSHandlerAddress;
procedure getXMSVersionNumber;
function printXMSVersion : string; { a readable string .. }
function printXMMVersion : string; { a readable string .. }
function requestHMA : boolean;
function releaseHMA : boolean;
function globalEnableA20 : boolean;
function globalDisableA20 : boolean;
function localEnableA20 : boolean;
function localDisableA20 : boolean;
function queryA20 : boolean;
procedure queryFreeExtendedMemory(var largestBlock, totalInK : word);
function xmsLargestBlock : word;
function xmsTotalFreeMemory : word;
function allocateXMB(sizeInK : word; var handle : word) : boolean;
function freeXMB(handle : word) : boolean;
function moveXMB(structure : xmsMovePtr) : boolean;
function moveXMBlock(len : longint; srcHandle : word; srcOfs : longint;
dstHandle : word; dstOfs : longint) : boolean;
function mainstgToXMB(len : word; fromPtr : pointer;
toHandle : word; toOfs : longint) : boolean;
function XMBtoMainstg(len : word; toPtr : pointer;
fmHandle : word; fmOfs : longint) : boolean;
function lockXMB(handle : word) : boolean;
function unlockXMB(handle : word) : boolean;
function getXMBInformation(handle : word; var lockCount, freeHandles : byte;
var sizeInK : word) : boolean;
function reallocXMB(newSizeInK, handle : word) : boolean;
function requestUMB(sizeInParagraphs : word; var segmentOfUMB : word;
var sizeAllocatedOrAvailable : word) : boolean;
function releaseUMB(segmentOfUMB : word) : boolean;
function xmsErrorStr : string;
Notice : I use the term XMB to describe an eXtended Memory Block, where
the XMS specification will discribe this block as EMB!.
xmslibr1.zippascal.269pedjak,
-> #257, zokalezic> $M $4000,0,0
> $M 16384,0,655360
Kompajlerska direktiva $M je globalnog tipa i utiče na program u
celini i kao takva se piše samo jednom u programu,u principu na
njegovom početku.Ako se kojim slučajem napiše više puta u programu
stvarni efekat ima samo zadnja direktiva, u ovom slučaju
$M 16384,0,655360
E sad,procedura Exec ne menja zauzeće memorije pre izvršavanja
programa.Zato pri prevođenju programa koji koristi Exec treba
smanjiti maksimalnu dužinu dinamičke memorije. Ako se to ne učini
neće biti dovoljno slobodne memorije (DosError #8).
Verzije operativnog sistema Novell Network manje od 2.01 ne
podržavaju pozive DOS-a koje Exec koristi.
Maksimalnu veličinu memorije smanji na onoliko koliko realno treba
tvom programu.Takođe smanji i veličinu steka.16K za stek je mnogo,
ne verujem da tvoj program baš zahteva toliki stek. Smanjenjem steka
i program će postati kraći.Takođe zapamti da integrisana okolina
tvom programa ostavlja nekih dvestotinjak kilobajta što često zna da
bude malo tako da je jedini način za testiranje takvih programa
prevođenje na disk i startovanje programa iz DOS-a.
Izvini ako sam te ugnjavio...
pedja
pascal.271vitez.koja,
-> #259, ssokorac#=> Ovo nije isto, ono cudo je sviralo modove :). Thanks!
probaj ovo :
..ma se vitez.koja mod_pas.arj **ili kako se vec zove**
Iznenadices se kako dobro radi :)
pascal.272vitez.koja,
-> #260, ssokorac#=> Ima li neko kartu sveta (granice) zapisanu (ili
#=> nacrtanu) u nekom obliku koji bi mogao da citam iz TP-a
#=> (i zatim iscrtavam, naravno:)?
Imam ja kartu sveta pokupljenu iz Pc Globe-a, u .LBM slicici... Nije
problem konvertovati u pcx ili sta vec...
pascal.273ssokorac,
-> #272, vitez.koja ─┼┤ Imam ja kartu sveta pokupljenu iz Pc Globe-a, u .LBM slicici... Nije
─┼┤ problem konvertovati u pcx ili sta vec...
Imam i ja u pcx takodje iz pcglobea :), ali meni treba nešto drugačije.
Kada ja imam tu sliku ne mogu tačno da odredim gde je koordinata neke
granice i slično., Trebalo bi mi nešto oblika
xyxyxyxyxyxy
pa onda ja samo čitam i lupam lineto(x,y) itd. :)
pascal.274dejanr,
==========
borland/turbo.pascal #6529, from tourville, 1435 chars, Mon Dec 21 20:30:15
1992
----------
TITLE: Protected mode and Graphics
I'm having some trouble using the GRAPH unit in protected mode. The
program compiles and runs without error in DOS real mode.
First of all, I have EGAVGA.BGI and LITT.CHR linked into the executable.
Is that legal in protected mode? RegisterBGIDriver and RegisterBGIFont
both return 0 in GraphResult, so I assumed it worked. The problem comes
when I try to InitGraph. I am getting runtime error 202 (Stack Overflow)
when the program gets to that point. If needed, I can post the code in
question, but I'm hoping you'l just say "oh...do _this_ and it'll work
fine." :)
On another note...am I missing something, or is there no way to use the
integrated debugger for protected mode programs? I dug out the docs on
TDX and learned to work it, but it is really sloppy to have to jump from
the IDE to the debugger and then back to the IDE and...well...you get the
picture. Kinda makes me wonder at the I in IDE.
Finally, some thanks...going from real mode to protected mode found two
instances of me dereferencing a null pointer. While this isn't a problem
in the code, they shouldn't be in there. Shame on me! :) I guess what I'm
thinking is that maybe I should compile all of my programs for protected
mode just to test for null pointer references.
On the whole, BP7.0 is pleasing me...especially protected mode. It's
awfully nice to see 15.1MB free on the heap. :)
-See ya online!
Chris T.
pascal.276dejanr,
===============================
6.287 PC.PROG.2:pascal
(00687) dejanr, 31.12.žet 04:08, 5061 chr
---------------------------------------------------------
==========
pascal/turbo #4622, from eliashim, 978 chars, Fri Dec 25 20:11:58 1992
Comment to 4590.
----------
Well we bought it lately at it does take almost 30MB of your HD (if
you install it all) but it does support not only DOS but DPMI & Windows.
It also got all the small utils that makes life easier like TASM
TD / TDW & TDX for protected mode + TPROF / TPROFW + many
other things.
But the great thing is that the new BP/BPC works now in protected
mode so you can debug large programs I mean even 640KB large things
that I couldn't do with TP 6.0 not even with TP 7.0 (it also got the old
TP inside).
My program uses about 30 units and 10 asm objects so believe me it's big
and you can also compile your program to all three platforms at once from BP
plus you got a great browers for browsing all the objects you write or use like
TV & OWL.
Yes it costs but I think that if you got the space (HD) and the money
it's worth it. Plus a small bug fixed is the delay that didn't
work on fast PC's and some new features that I didn't get deep into them yet
but
they seem to be usefull.
==========
pascal/turbo #4623, from eliashim, 124 chars, Fri Dec 25 20:15:19 1992
Comment to 4595.
----------
It's still limited and that's a shame , why couldn't they made a
product like the BC++ 3.1 if it's already the same price.
pascal.278paki,
-> #199, skerlń> Evo jednog unit-a koji radi sa sprajtovima.
Unit je super, samo...da bi napravio sprajtove treba ili da ih
ukucavaš ručno u obliku text fajla (1.red ___ 2.red ____ itd.) što
nije baš najzgodnije, ili da ih crtaš u Animatoru, što bi bilo OK. E
sad, da li dotični Animator radi na 286/1Mb, a ako ne, ima li neki
drugi program koji može da snima u tom formatu?
pascal.279dtadic,
Evo spiska arhiva koje bi, po mom misljenju, svakako trebalo da se nadju u
pascal direktorijumu. Sve se vec nalaze na Sezamu, samo nadlezni treba da ih
prebace u \imbpc\pascal.
QWIK55.ARJ - rutine za ispis na ekran
WNDW55.ARJ - rad sa prozorima
PULL55.ARJ - rad sa padajucim menijima
ASYNC.ARJ - asunhrona komunikacija
DT
pascal.280ppekovic,
-> #273, ssokorac>> Trebalo bi mi nešto oblika
>>
>> xyxyxyxyxyxy
>>
>> pa onda ja samo čitam i lupam lineto(x,y) itd. :)
... tj. treba ti vektorska slika, učeniče matematičke
gimnazije ;))))
Paya
pascal.281ssokorac,
-> #280, ppekovic ─┼┤ ... tj. treba ti vektorska slika, učeniče matematičke
─┼┤ gimnazije ;))))
Hvala, bivši učeniče matematičke gimnazije ;)). Otkud bi ja to znao da je
to to :), sa geografije? :)
pascal.282broker,
-> #273, ssokorac> pa onda ja samo čitam i lupam lineto(x,y) itd. :)
Corel Draw radi sa PCX-ovima i ima jednu alatku (CorelTrace)
koja bit mapiranu sliku pretvori u vektorsku (prepoznaje čak
i boje i nijanse sivog). Takva slika se da pretvoriti u neki
poznatiji vektorski format...
Ovo je samo ideja...ko napravi nek javi jer i meni treba ;)
pascal.283peca.st,
-> #273, ssokorac!-> pa onda ja samo čitam i lupam lineto(x,y) itd. :)
Upravo će ti to lovro polati ako nađe. To sam inače ja radio pa znam kako
izgleda. Dakle, postoji procedura crtaj(x,y:integer;s:string) koja iz filea
s crta počev od tačke (x,y) neku krivudavu liniju. File s sadrži samo
brojeve 1-9 bez 5 i onda crta jednu tačku čiji se položaj određuje u odnosu na
prethodnu. Brojevi 1-9 označavaju sledeću tačku kao na numeričkoj tastaturi.
Ja sam kao, što već negde rekoh, napravio te fajlove za sve kontinente i
nekoliko granica. Pa ako lovro to negde iskopa on će ti poslati!
P e C a
pascal.284peca.st,
-> #278, paki!-> Unit je super, samo...da bi napravio sprajtove treba ili da
!-> ih ukucavaš ručno u obliku text fajla (1.red ___ 2.red ____
!-> itd.) što
žoveče, zar ti je teško da napraviš proceduru koja bi imala ovakvo zaglavlje
procedure u_file(x1,y1,x2,y2);
i koja bi sa dela ekrana označenog sa (x1,y1)-(x2,y2) ispisivala u file boje
tačaka koje se nalaze tu. To, ako ne znaš, uradiš u dva ciklusa, čitaš
getpixel(i,j) i onda ga zapisuješ u file sa write(f,boja). Trebalo bi da radi!
P e C a
BTW, nisam skinuo taj program pa ne znam kakav mu je zapis ali sudeći po
tvojoj poruci trebalo bi da radi ovako kao što sam napisao.
pascal.285peca.st,
-> #282, broker!-> Ovo je samo ideja...ko napravi nek javi jer i meni treba ;)
Ja ne znam šta Lovro čeka, što ne šalje moj program koji radi, po mom
mišljenju, baš ono što vama treba. Ja sam, kao što rekoh taj program obrisao a
proverio sam i diskete i nema ga na njima. Dakle,
LOVRO ŠALJI IM TO VEĆ JEDNOM !!!!!!!!!!!!
P e C a
pascal.286paki,
-> #284, peca.st> žoveče, zar ti je teško da napraviš proceduru koja bi imala
> ovakvo zaglavlje
>
> procedure u_file(x1,y1,x2,y2);
>
> i koja bi sa dela ekrana označenog sa (x1,y1)-(x2,y2)
> ispisivala u file boje tačaka koje se nalaze tu. To, ako ne
> znaš, uradiš u dva ciklusa, čitaš getpixel(i,j) i onda ga
> zapisuješ u file sa write(f,boja). Trebalo bi da radi!
Ma to je lako uraditi, ali tu sliku prvo treba da nacrtam. A recimo
da je crtam u PaintBrushu ili nečemu sličnom, morao bih da je snimam
u .PCX, da je učitavam iz TP, crtam, skidam u file i tek onda
ubacujem u moj program... Ovo je primenljivo na 3-4 sprajta, ali za
dvadesetak komada postaje pravo mučenje.Ako neko zna(ima) bolje
rešenje ili program, nek mi kaže. Fala...
pascal.287paki,
-> #259, ssokorac> ─┼┤ Play music in the background.
>
> Ovo nije isto, ono čudo je sviralo modove :). Thanks!
Pa to čudo bi bilo lepo da se okači ovde, ako nije problem :))
pascal.288lovro,
-> #285, peca.st> LOVRO SALJI IM TO VEC JEDNOM !!!!!!!!!!!!
Sta lupas?
Kazes da si napravio program koji pretvara bitmap u vektorski?
Jesl' ti lud?
Lovro
P. S. Stvarno ne znam sta treba da posaljem. Napisi mi, verovatno sam
zaboravio. Krajnje sam ozbiljan.
pascal.289lovro,
-> #283, peca.st> nekoliko granica. Pa ako lovro to negde iskopa on ce ti
> poslati!
Imam ja to (moja verzija, po PeCinoj ideji), ali to nema nikakve veze sa
vektorskom grafikom. To je obicno crtanje izlomljene linije.
Lovro
pascal.290vitez.koja,
-> #278, paki#=> nije bas najzgodnije, ili da ih crtas u Animatoru, sto
#=> bi bilo OK. E sad, da li doticni Animator radi na
#=> 286/1Mb, a ako ne, ima li neki drugi program koji moze
#=> da snima u tom formatu?
Animator radi na 286, provereno...
pascal.291predragd,
-> #273, ssokorac> Kada ja imam tu sliku ne mogu tačno da odredim gde je
> koordinata neke granice i slično., Trebalo bi mi nešto
> oblika
>
> xyxyxyxyxyxy
>
> pa onda ja samo čitam i lupam lineto(x,y) itd. :)
Na TRICKE-u postoji direktorijum (ako ga nisu obrisali) pod nazivom
WORLDMAP (ili nešto slično). U njemu sa nalazi programčić (source na
TP), koji služi za prikazivanje mapa (koristi neki njegov levi
format). Doduše nisam siguran da li taj format oblika koji bi tebi
trebao, no ako si zainteresovan za prog, javi se. U prilogu su date
mape svih kontinenata.
Peđa.
pascal.292melev,
-> #151, almi║ Evo jedna igre pisane u pascalu
Jel možes da mi kažeš bar u kom modu radi, jer meni kaže da moja kartica
ne podržava taj mod? Inače imam RELATEK SVGA (1024x768).
pascal.293ssokorac,
-> #287, paki ─┼┤ Pa to čudo bi bilo lepo da se okači ovde, ako nije problem :))
Ja bi vrlo rado, ali kao što rekoh, autor je bearboy, pa ako on smatra da
je pd i da je dostupno svima, on će i poslati. Ja ne mogu.
pascal.294ssokorac,
-> #292, melev ─┼┤ Jel možes da mi kažeš bar u kom modu radi, jer meni kaže da moja kartica
─┼┤ ne podržava taj mod? Inače imam RELATEK SVGA (1024x768).
To sam i ja pitao :). Startuj sa yublue 1
Inače, predlažem nekom od nadležnih :) da pogledaju igru pa da je stave u
FUN, zaslužila je.
P.S. Samo ne znam zašto se zove Yublue? :)
pascal.295wizard,
-> #294, ssokorac>> Inače, predlažem nekom od nadležnih :) da pogledaju igru pa da je stave
>> u FUN, zaslužila je.
Zaslužiće kad ispravi bag koji se javlja kad kombinuješ igranje
tastaturom i mišem. :)
pascal.296peca.st,
-> #288, lovro!-> Sta lupas?
!-> Kazes da si napravio program koji pretvara bitmap u
!-> vektorski? Jesl' ti lud?
Ti Boga mi ne pratiš ovu conf redovno!
Ne kažem ja da je moj program konverzija iz vektora u bitmap, nego da otprilike
ima vektorski način zapisivanja. Do duše nije sa line kao obično nego sa
tačkama ali ne kao koordinate u prostoru nego kao koordinate u odnosu na
prethodnu tačku, što je ipak vektorski!
E, a to što ne znaš šta treba da pošalješ znači da patiš od amnezije...
Pa ti si mi sam predložio da to pošaljem a ja sam ti rekao da sam obrisao, a ti
si onda rekao da si ti sačuvao!
Dakle, pošalji im bre onu kartu sveta što sam ja radio kad sam hteo da pravim
Risk!
P e C a
pascal.297peca.st,
-> #286, paki!-> Ma to je lako uraditi, ali tu sliku prvo treba da nacrtam.
Ja iskreno rečeno sve crteže crtam pešaka, dakle sa line, circle etc etc...
Tako mi je najlakše jer mogu lako da se orijentišem.
Do duše sada sam napravio neki moj DR Genius koji za sada koristim za interne
potrebe ali ću ga uskoro kad ga malo doteram poslati na ZEZAM.
U ostalom, zašto ti je težak onaj postupak što si ga opisao? Imaš lepo PCX
sliku, imaš TP unit koji čita PCX i šta ti preostaje? Da otkucaš jednu naredbu!
P e C a
pascal.298peca.st,
-> #289, lovro!-> Imam ja to (moja verzija, po PeCinoj ideji), ali to nema
!-> nikakve veze sa vektorskom grafikom. To je obicno crtanje
!-> izlomljene linije.
Dragi dečače, bit-map grafika je ona grafika (po meni) kod koje se koordinate
svih tačaka odredjuju u odnosu na prostor, tj. koordinatni sistem.
E vektorska grafika je ona (opet po meni) kod koje se tačka odredjuje u odnosu
na prethodnu tačku, pa time zadavanjem samo početne tačke imaš koordinate svih
ostalih. To se najčešće radi sa lineto(x,y) radi brzine, ali je i sa putpixel
moguće to izvesti ako računaš u odnosu na tačku koju si malo pre nacrtao.
Dakle, onaj moj program je poluvektorski, jer odredjivanjem jedne tačke na
jednom kontinentu možeš izračunati koordinate svih tačaka na tom kontinentu
ali ne i na celoj karti. Zadavanjem koodinate tačke na nekom drugom kontinentu
dobiješ to isto za taj kontinent. Dakle, opet moram da se derem:
ŠALJI TO VEĆ JEDNOM !!!!!!
P e C a
pascal.299janko,
(*
> ===============================
> 4.10 PC.PROG.2:basic
> ndragan, 29.12.92. 14:56, 2168 chr
> ---------------------------------------------------------
> Neko veče deca nađoše stare crteže rađene svingografom. To je bilo neko
> klatno čiji teg je tabla A4, na tablu se stavi list papira, na stalku je
> klackalica sa mestom za umetanje flomastera, klatno se zaljulja,
> flomaster se spusti i... dobije se šta se dobije. Pošto nikako nisam
> uspeo da im objasnim da mi ne pada napamet da se po ovoj ciči zimi
> zavlačim u garažu i pravim takvu napravu, izvukao sam se napisavši ovaj
> program:
*)
(*
Ovo je Turbo Paskal verzija ndraganovog programa za
'novogodišnje ukokavanje.' :) Nemam boje i ne znam qbasic
pa sam prebacio program u ovaj jezik... Mrzelo me je da
podešavam logično ponašanje sa bojama na svim karticama.
Ko želi može sam da proba...
Originalni komentari su sačuvani.
Srećne nove godine želi vam Janko
Kontrole: RAZMAK -- prelazi na novi crtež
SVAKI DRUGI TASTER -- kraj
*)
uses crt,graph;
const faktor=32767;
jkfaktor=1.0/faktor;
function rnd: real;
begin
rnd:=random(32767)*jkfaktor;
end;
FUNCTION qrnd( a: real; b : real):integer;
begin
qrnd := trunc(RND * (b - a) + a);
end;
var pi,p0,p1,p2,p3,p4,p5,p6 : real;
s1, s2, max, t : real;
ax, ay, bx, by, cx, cy, bx0, by0 : real;
k : char;
i : integer;
c : word;
tt1, tt2, tt3, tt4 : real;
jkmax : real;
var
Gd, Gm : Integer;
label 1,2,3;
begin
pi := 3.14159265359;
p0 := 0;
p1 := 0;
p2 := 0;
p3 := 0;
p4 := 0;
p5 := 0;
p6 := 0;
s1 := 0;
s2 := 0;
max := 0;
c := 0;
t := 0;
ax := 0;
ay := 0;
bx := 0;
by := 0;
cx := 0;
cy := 0;
bx0 := 0;
by0 := 0;
Gd := Detect; InitGraph(Gd, Gm, '');
if GraphResult <> grOk then Halt(1);
c:=getmaxcolor;
randomize;
repeat
p0 := qrnd(1, 6) / qrnd(2, 7);
(* fazni pomeraj *)
p1 := RND * pi / 2;
(* a ovo je pokušaj da se dobije dovoljno gust crtež *)
IF p0 > 0 THEN
p5 := 1 / p0
ELSE
p5 := p0 ;
p5 := p5 * (1 - p5) ;
p3 := 1 + 0.01953125 * RND * p5 ;
p5 := 0.001220703125 ;
p4 := RND * 2 - 1 ;
p6 := p5 / 2 ;
s1 := RND * 2 - 1 ;
s2 := RND * 2 - 1 ;
max := 820 ;
while keypressed do k:=readkey;
c := 0 ;
t:=max;
for i:=1 to 2 do
begin
ax := SIN(t) + s1 ;
ay := COS(t * p0 + p1) + s2 ;
cx := ((ax * SIN(t * p5) + ay * COS(t * p6 + p4))) ;
cy := ((ax * COS(t * p5) + ay * SIN(t * p6 + p4))) ;
bx := ((cx * SIN(t * p3) + cy * COS(t * p3 + p4)) * t / max + 1) * 280 ;
by := ((cx * COS(t * p3) + cy * SIN(t * p3 + p4)) * t / max + 1) * 180 ;
(* c := 15 + (bx0 > bx) + 2 * (by0 > by) ; *)
if keypressed then goto 2;
bx0 := bx ;
by0 := by ;
t:=t-0.109375;
end;
jkmax := 1 / max;
while (t>= max/4) do (* FOR t := max TO max / 5 STEP -.1 *)
begin
ax := SIN(t) + s1 ;
ay := COS(t * p0 + p1) + s2 ;
tt1:= t * p5;
tt2:= t * p6 + p4;
cx := ((ax * SIN( tt1 ) + ay * COS( tt2 ))) ;
cy := ((ax * COS( tt1 ) + ay * SIN( tt2 ))) ;
tt1:= t * jkmax * cx ;
tt2:= t * jkmax * cy ;
tt3:= t * p3;
tt4:= tt3 + p4;
bx := ((tt1 * SIN( tt3 ) + tt2 * COS( tt4 )) + 1) * 280 ;
by := ((tt1 * COS( tt3 ) + tt2 * SIN( tt4 )) + 1) * 180 ;
LINE (trunc(bx0), trunc(by0) ,trunc(bx), trunc(by)) (*, c*) ;
(* c := 15 + (bx0 > bx) + 2 * (by0 > by) ; *)
if keypressed then goto 2;
bx0 := bx ;
by0 := by ;
t:=t-0.109375;
end;
2:
if keypressed then
begin
k:=readkey;
if (k<>' ') then goto 1
else goto 3;
end;
for i:=1 to 90 do (* 90*0.1= 9 sec *)
begin
delay(100); (* 0.1 sec *)
if keypressed then
begin
k:=readkey;
if (k<>' ') then goto 1
else goto 3;
end;
end;
3:;
clearviewport;
until false;
1:
closegraph;
end.
(*
> Eto, najzad nekako ispada da sam i ja nekog nešto častio za Novu godinu
> :) ili sam se bar izvadio za onaj dupli egzek ;).
>
> Ovo je QBasic, ali mislim da ladno može da se prebaci u bilo koji drugi
> bejzik koji podržava grafiku. Odustao sam od bilo kakvog unosa brojeva -
> lepše mi je da prepravim par linija u programu, nego da kojegde pamtim
> zgodne brojeve od prošli put.
>
> Pustite ovo za vreme dočeka nek se vrti, smanjiće vam potrošnju pića.
> Pretpostavljam da će se naći tipova koji će se ukokavati gledajući ove
> zavrnute Lisažuove figure. Lepo se provedite.
> ----------------------------------------------- 4.10 ---
*)
pascal.300.sima,
-> #258, pedjakŠalji source :)
Srđan
pascal.301bulaja,
-> #279, dtadic│Evo spiska arhiva koje bi, po mom misljenju, svakako trebalo da se
│nadju u pascal direktorijumu.
└───
Hvala na savetu, pogledacu sta tu ima.
pascal.302lovro,
-> #298, peca.st> SALJI TO VEC JEDNOM !!!!!!
U redu, poslacu, samo dogovorite se prvo u kom formatu.
Nudim:
-.pic
-.tif
-.mac
-.pcx
-.gif
-.bmp
-.wpg
-snimljena ekranska memorija (od $B000:$0000) (ovo je prilicno sporo)
-snimljen kao pascal image (sa blockwrite). Uz zadnja dva saljem
odgovarajuce procedure
-...
Obratite paznju da ja imam Hercules, pa ne znam sta bi od ovoga radilo na
vasim Vegama.
Ssokorac, izjasni se. Mapa sveta je namenjena tebi (trazio si).
Lovro
pascal.303skoprivica,
evo igre gomoku, tj. pet u redu, napisana je davno, davno
(nisam ja), ima sors u TP (3.0 valjda, nisam probao radi li
na kasnijim verzijama, ali ima i .exe :). Eto, mozda nekom
bude koristilo.
Aje... CTEBO.
gomoku!.arjpascal.305bulaja,
-> #294, ssokorac│Inace, predlazem nekom od nadleznih :) da pogledaju igru pa da je
│stave u FUN, zasluzila je.
└───
Pogledao sam ja, ali mi se cini nekako suvise trivijalnom :), a ima
i poneki bug :).
pascal.306ssokorac,
-> #305, bulaja ─┼┤ Pogledao sam ja, ali mi se cini nekako suvise trivijalnom :), a ima
─┼┤ i poneki bug :).
Pa, dobro, sačekajmo novu verziju u kojoj voziš mig-29 i kokaš B-52 dok ti
gadjaju kuću svaki put kada pojedeš broj :), ili bar slično :).
pascal.307darone,
-> #303, skoprivica>> evo igre gomoku, tj. pet u redu, (...) ima sors
>> u TP (3.0 valjda, nisam probao radi li na
>> kasnijim verzijama, ali ima i .exe :).
Sors neće da se kompajlira sa višim verzijama TPa.
Prepraviti ga nije problem. Znam o čemu se radi,
iako nisi poslao arhivu :)
darone
pascal.308bearboy,
-> #210, peca.st║ Ako li zna neko šta mu dođe DOS Error #8
Manjak slobodne memorije...
pascal.309peca.st,
-> #302, lovro!-> U redu, poslacu, samo dogovorite se prvo
!-> u kom formatu.
žekaj malo, zar mi nisi rekao da si sačuvao i source? Ako jesi onda šalji one
*.crt fajlove bre i sam pascal source a ne kao sliku bre. Ništa mu ne vredi ako
mu ti daš bitmap sliku, on ako sam ja razumeo hoće sve lepo, kako treba.
Nadam se da si razumeo!
CU P e C a
pascal.310ppekovic,
-> #309, peca.st>> žekaj malo, zar mi nisi rekao da si sačuvao i source? Ako jesi onda šalji
>> *.crt fajlove bre i sam pascal source a ne kao sliku bre. Ništa mu ne
>> vredi ako mu ti daš bitmap sliku, on ako sam ja razumeo hoće sve lepo,
>> kako treba.
Ajte se lepo vas dvojica dogovorite o tome u mail-u, ili, pošto vidim da
ste drugari, dogovorite se oči u oči pa kad se dogovorite onda lepo pošaljite
to što treba da pošaljete.
Paya
pascal.311paki,
-> #305, bulaja> ─┼┤ Pa to čudo bi bilo lepo da se okači ovde, ako nije problem
> :))
> Ja bi vrlo rado, ali kao što rekoh, autor je bearboy, pa ako
> on smatra da je pd i da je dostupno svima, on će i poslati. Ja
> ne mogu.
Bearboy, reci da li si voljan da šilješ ili da upadam kod Staše u
stan i nosim unit sa sve hard diskom ;))
Šalu na stranu, reci da li je to tvoje čedo pd&sw ili da se snalazimo...
pascal.312skoprivica,
-> #303, skoprivica│ evo igre gomoku, tj. pet u redu, napisana je davno, davno
Ispravih se, sada je zakaceno...
pascal.313ldragan,
Ak▀o neko kojim slučajem ima "NDX.PAS" koji se pominje u časopisu
Inside Turbo Paskal iz aprila 91' bio bih zahvalan da mi ga pošalje
HPozdrav svima !
LDragan
pascal.315ssokorac,
-> #313, ldragan ─┼┤ Nemo da diraš čoveka , baš mi se svidela igrica , jedva čekam
─┼┤ da dođe ćelavi kod mene ili ja kod njega pa da opalimo po jednu
Samo se vi vežbajte, pa kad prepravi da radi preko modema, onda možete
samo da se pognete pod moćnijimi umom, ili, kraće, biće 70 razlike za mene
O:).
pascal.316skerl,
Evo jos neceg sto bi po meni obavezno trebalo da se nadje
u Pascal dir-u.
Pozdrav,
Skerl.
{ The following is the INTERFACE section of FCOMM.PAS (FCOMM.TPU).
It has all of the functions and code you will need, so please don't
hesitate and give me a ring via the Doorware FidoNet Echomail Conference. }
UNIT FCOMM;
{
--------------------------------------------------------------------------
FComm - A FOSSIL driven I/O Library for Doors w/lots-of-goodies :)
- for use with Turbo Pascal 6.0
- for use with Remote Access v1.0
- works with RA's *.BBS files, DOOR.SYS and DORINFO?.SYS
- SysOp "hot-keys" (see documentation or source code)
- Code supporting Interactive EMSI
- Emulated "windowed" ANSI & AVATAR graphics
- Status line on caller
- Checks for carrier drop, keyhit timeout and time-limit timeout.
- semi-intelligent code
- nice programmer who takes suggestions.. (yuck)
- and FREE.
Copyright (c) 1991 by Michael Paine
- I hope this gets improved by a few programmers out there.. all I ask
for is to only have one "valid" copy floating around, or chaos will
definately occur, so please send improvements to:
FidoNet NETMAIL @ 1:363/111
or Data (407)862-4724 (The SCSI Resource BBS)
A "TRUST-ME" NOTE: THE BEST WAY TO LEARN THIS LIBRARY IS TO KEEP USING IT
UNTIL IT WORKS. THAT SOUNDS BACKWARDS, BUT IT IS THE
BEST WAY TO LEARN OTHER PEOPLE'S WORK...
--------------------------------------------------------------------------
fcomm240.zippascal.317bulaja,
**** new file ****
\IBMPC\PASCAL\
upconv22.arj (68.972 bytes)
Reformatiranje identifikatora u TP izvornom kodu
UpConv is a case conversion program designed for Turbo Pascal
versions 3.0 to 6.0 and TPW 1.0, which can easilly be adapted to
newer versions of Turbo Pascal.
Case conversion is the process of reformatting identifiers in
pascal source code to some predefined way. Borland international is
very consistent in their manuals, all the identifiers are lower case,
all other identifiers have some predefined case convention (mostly
lower case with the first letters of words to upper case).
Because is is very likely that you have your own style of case
convention (for example, use all upper case) and you want to have other
source code in that format as well, UpConv has been developed. It reads
pascal files (not only Turbo Pascal) and writes new reformatted files
with all identifiers according to the case convention you desire.
pascal.318broker,
-> #285, peca.st> pa onda ja samo čitam i lupam lineto(x,y) itd. :)
Corel Draw radi sa PCX-ovima i ima jednu alatku (CorelTrace)
koja bit mapiranu sliku pretvori u vektorsku (prepoznaje čak
i boje i nijanse sivog). Takva slika se da pretvoriti u neki
poznatiji vektorski format...
Ovo je samo ideja...ko napravi nek javi jer i meni treba ;)
pascal.319pedjak,
-> #313, ldragan> Ak▀o neko kojim slučajem ima "NDX.PAS" koji se pominje u časopisu
Evo ga NDX.PAS
pedja
ndx.arjpascal.320isekulovic,
Imam jedan problem u vezi tp-a sa stringovima. Rešenje je po svemu
sudeći banalno i ja gledam već nekoliko dana u njega ali jednostavno
ga ne mogu videti.
Imam funkciju
function xyz (s:string) : string;
i hoću da imam kao string kao konstantu, string koji ću moći da
transformišem finckijom xyz, ali string uz to da bude određene dužine,
znači:
const podatak : string[10] = ('string1');
a ne
const podatak : string = ('string1');
KAKO???!?!?!?
Ivan sa podočnjacima i glavoboljom
pascal.321inesic,
Ljudi, pomagajte!
Puko mi hard, pa sam, između ostalog, morao ponovo da instaliram i TP 5.5
i da zabrljam, naravno s tim što ne znam gde.
Da opišem problem na primeru. Uzmem sledeći program
begin
write('bla, bla, bla');
end.
i kad pritisnem Ctrl-F9 on iskompajlira i počne da ispisuje. ALI ne izađe u
DOS, već ispisuje tu, po radnom okruženju. Počne od tačke iza end na kraju
programa, tj. odande gde sam ostavio kursor kad sam pritisnuo Ctrl-F9, nas-
tavi preko help linije u dnu ekrana, a zatim, kad dođe na kraj reda, odskro-
luje (opljuvaće me u o.jeziku) najpre menu linija, pa posle i statusna linija
a i sve ostale linije. Ceo ekran u radnoj okolini se napuni sa bla,bla,bla i
to skroluje.
Kad zaustavim program, regeneriše se samo onaj deo menu linije gde
piše File, a ostalo se regeneriše tek po selektovanju. Help linija se takođe
regeneriše tek kad je selektujem dužim pritiskom na Alt, a status liniju još
nisam video da se regenerisala.
Nijedan program koji zahteva prelazak u grafički mod ne radi, valjda
zato što je radno okruženje realizovano u text modu.
Štad da mu radim?
Ivica
pascal.322dejanr,
-> #320, isekulovic>> const podatak : string[10] = ('string1');
>> a ne
Nije mi baš jasan tvoj problem, pa ako može malo detaljnije...
Upravo ovako napišeš naredbu i imaš string kakav ti je potreban.
Mora biti da ja nisam nešto razumeo.
pascal.323pedjak,
-> #320, isekulovic> i hoću da imam kao string kao konstantu, string koji ću moći da
> transformišem finckijom xyz, ali string uz to da bude određene dužine,
> znači:
>
> const podatak : stringŠ10Ć = ('string1');
>
> a ne
>
> const podatak : string = ('string1');
Ne trebaju ti uglaste zagrade...
Znači:
const podatak:stringŠ10Ć='string1';
P.S. idi odspavaj :)))
pascal.324ssokorac,
-> #320, isekulovic ─┼┤ const podatak : stringŠ10Ć = ('string1');
Pozovi funkciju umesto sa
novi:=xyz(podatak);
sa
novi:=xyz(copy(podatak,1,10));
pascal.325inesic,
-> #171, pedjak> Evo mouse unita. Autor je moja malenkost pa ako budete
> imali neke probleme samo vičite... :)
Zapravo nisu problemi sa unitom. Njemu sve pohvale: koliko sam
stigao da isprobam - sve radi. Jednostavan je za upotrebu, ali
ono što me je posebno oduševilo je dokumentacija. Ja još nisam
video da neko uloži toliki rad u kreiranje dokumentacije za PD
softver. Ne znam kako bih ja sebe naterao da toliko uradim, a da
mi za to niko ne plati.
Nego da ne davim, nisam pisao ovu poruku da bi pedjak imao zbog
čega da se uspija, već zato što imam problem sa nedostatkom
ideja.
Recimo da je ovo meni-prozor nekog programa
┌─Menu prozor─┐
├─────────────┤
│ Opcija #001 │
│ Opcija #002 │
│ĆOpcija #003ž│
│ Opcija #004 │
│ Opcija #005 │
└─────────────┘
i hajlajtom je selektovana opcija 3. Dakle, ako lupim Ćenterž,
izvršiće se opcija 3, ako lupim Ćupž ili Ćdownž hajlajt ide gore
ili dole, ako pritisnem 1..5 izvršiće se odgovarajuća opcija. Sve
je to lepo i umeo bih da napravim. Uz pomoć Peđinog unita mogao
bih da vozim miša preko prozora, da levim dugmetom selektujem, a
desnim da zatvaram prozor - Esc.
Međutim ono što mi nikako ne dolazi to je kako da kombinujem ove
dve tehnike, tj kako da kažem programu da malo gleda na miša, a
malo na tastaturu, tj. da očekuje ulaz s obe strane.
Još uvek bez podočnjaka, ali u nedoumici
inesic
pascal.327beast,
Nađoh ogroman bag TP 6.0 i to:
Markirajte neko slovo (nisam probao sa više njih, samo sa
jednim) i sa shift-ins ga pastujte. Kad ispunite red, pascal će
pokušati da prebaci sve to u drugi red (ne puštajte shift-ins)
i desiće se svašta. Počeće da lupa komande prethodno kucane u
dosu, da kompajlira i na kraju da se zablokira. Ovo sam probao
kod mene i kod dzakica i javljao je iste simptome. Šta kažu
ostali? Jel TP 6.0 zreo za naslednika? :)
pascal.328isekulovic,
-> #322, dejanr>> Nije mi baš jasan tvoj problem, pa ako može malo detaljnije...
Rešio sam, mada mi nije jasno kako. Probelm je bilo što funkcija nije
htela da prihvati onako definisan string, kao 'ulazni'. Rešio sam
tako što sam umesto
function xyz (var s:string) : string;
stavio
function xyz (s:string) : string;
i sve je ok. Sad kad bi mi još neko objasnio razliku. Ja sam živeo u zabludi
da je to isto. O:)
Ivan
ps hvala svima na pomoći
pascal.329dejanr,
-> #328, isekulovicAko napišeš
function xyz(s:string)...;
onda promena S u proceduri ne biva vraćena u glavni program, dakle
argument pri pozivu može da bude i konstanta. Sa druge strane,
function xyz(var s:string)...;
znači da promena s-a treba da se prenese nazad u glavni program.
Ako u glavnom programu piše aaa:=xyz('x'); onda ovo ne može da
se prevede, jer kako da se promeni konstanta 'x'. Isto je ako ta
konstanta nije navedena "na licinom mestu" nego definisana u
const sekciji.