Warsaw BASIC
|
This article is very short and not very detailed. Please help to improve it. |
| WarsawBASIC | ||
|---|---|---|
| Developer | Krzysztof Gajewski, Bogusław Radziszewski | |
| Company | Commodore | |
| Publisher | Fundacja Edukacji Technologicznej | |
| Release | 1985-1992 | |
| Licence | Full version | |
| Platform | VIC-20, C64, C128 | |
| Genre | BASIC Expansion | |
| Operation | ||
| Media | ||
| Language(s) | ||
| Information | Different versions, actual: V3.2 VIC-20 version also released | |
Warsaw BASIC (Warsaw is officially the name of the Capital City of Poland) is a BASIC extension for education and science created by the two mathematicians Krzysztof Gajewski and Bogusław Radziszewski from PAN (Polish Academy of Sciences). The initial version was developed for the VIC-20, while the later versions were available for the C64 and C128.
The main goal of the extension, which was to use it in education and science, made it unique in several ways. The most important difference from other BASIC extensions was implementation of some more advanced structural programming features, in particular procedures that can be loaded automatically from a disk (as overlays), making it possible to run a program larger than computer's memory (a similar technique is used in many games, but require the use of assembly). Also, it was distributed with a diskette with procedures for numerical calculations, including operations on matrices, complex numbers and operations like differentiation, integration, solving equations (including differential) or calculating regression.
It also provided access to some special features of the C-64, like high resolution graphics, but it did not add any commands for using sound.
Since it was not meant for creating simple, popular applications (like games), it was moderately popular in Poland (mostly among more advanced users). Elsewhere, it did not gain much attention, mainly due to late introduction - it became more widely available in early 1990s (after the fall of communism), when 8-bit computers were already in decline in Western countries. However, it was distributed until 1994 in Poland and, according to one of the authors (in an interview on YouTube), all of the produced cartriges were sold.
Starting[edit | edit source]

After the loading of Warsaw BASIC from cassette or disk, start the BASIC extension with RUN.
Or plug-in the Warsaw BASIC cartridge in a power off C64 and turn it on.
Now the starting screen appears:
32005 BASIC BYTES FREE
An overview of the round about 45 new BASIC commands you can get with: HELP.
BASIC Extension[edit | edit source]
Warsaw BASIC exists in different versions. The newest is version 3.2.
The following BASIC commands are new or was optimized:
Enhanced BASIC commands[edit | edit source]
CMD, GOTO, GOSUB, LIST, NEW, PRINT, REM, RUN, INPUT, CLOSE, OPEN, SYS, RESTOREPRINT@x,variable- Prints a variable on position x (0-999)PRINT USING- Formats variables
Progamming help[edit | edit source]
AUTO [start_line][,step]- Auto line with starline and stepRENUM [start_line][,step]- Renumber a BASIC program with new startline and stepDEL [line]|[[line_start]-[line_end]]- Delete one line or line aeraFIND <impression>- Find a word or impression in the BASIC line or programON ERROR...GOTORESUME [line]TRACETRACEOFFDISPOSE [NEXT|RETURN|CLR]
Mathemathics functions[edit | edit source]
EVAL(numbers)EXAM()FRAC(decimalnumber)- Show the frac of a decimal numberHEEK(memorynumber)- Similair PEEKMAX(x,y,...)Shows the MAX value of a number aeraMIN(x,y,...)Shows the MIN value of a number aeraODD(x)Returns back a -1 if the number is odd or a 0 if the number isn't odd.ROUND(decimalnumber)Round a decimal number down (<=4) and up (>=5)
New loops[edit | edit source]
IF...THEN...ELSE, WBIF, WBELSE, WBEND, WHILE...DO, REPEAT...UNTIL
Graphic commands[edit | edit source]
COLOUR x- Change the multicolor, x=0-255CURSOR x- Change the text color, x=0-16DOT x,y- Draw a pixel on position x,yDOTOFFDRAW [*|no],x,y- Draw a lineGROUND x- Change background color, x=0-255HICOLOUR x,y,z- Sets the colour in HIRES mode (0-16)HIRES- Switch to HIRES screenHIRESOFF- Switch to normal screenLINE x0,y0,x1,y1,zLETTER- Activate small lettersLETTEROFF- Activate big lettersSDOT x,y,zSDRAWSLINE
Printer and floppy commands[edit | edit source]
CMD PRINT, DOS
It is a feature like DOS Wedge 5.1 inside.
Procedure[edit | edit source]
PROCEDURE"/name"(variables)- Definite a procedurePROCEND- End of procedureCALL(variables)"/name",driveno- Call (load) another procedure saving on floppy driveNEWPROC- Starts a new procedure.MERGEPROC"/name",driveno- Merge one or more procedures in the memory₤variablename- Procedure variables, only this variables can be interreact with other proceduresNEW₤- Starts a new definations of procedure variables
Memory commands[edit | edit source]
MOVESWAPHIMEM page,value- Change the BASIC memory to memory page (0-255)MEM- Shows free memory (overview)HILOAD- Loads code in the high memoryHISAVE- Save code from the high memory on floppy diskHIPRINT- Print the high memory
Other Commands[edit | edit source]
AXIS, CHAIN, COMMON, CREATE, DEF USR, DEF EXTERN, EXECBEEP x,y,seconds- Make an individually beep sound (0-255). Lower numbers are given muffled tones and higher numbers are given high tonesREVERSSEC x- Waits x=1-255 secondsSLEEP
Warsaw BASIC commands[edit | edit source]
HELP- Show all new commands or tokensHELPOFF- Show all BASIC V2 commands or tokensKILL
Links[edit | edit source]
- Download
- Warsaw BASIC in CSDb
- Warsaw BASIC v3.0 in PlanetEmu (PRG)

- Warsaw BASIC in PlanetEmu (t64)


