Component Pascal Collection

Helmut Zinn


By Dmitry V. Dagaev

Transparent Architecture - communication SW for distributed systems.

This software is purposed for communication between different programs, written in Oberon and C. It uses SRPS protocol type for LANs via UDP multicast, UDP, TCP, Shared Memory, PING for ICMP and SOAP/HTTP for WANs.

TA is distributed in BlackBox, XDS and C versions both for Windows and Linux compatible with each other at

Ta_ doesn't use any other CPC services.

StdCoded File <=> PacCoded File (641 /283 kByte - Release 28-March-2014)


By Gérard Meunier

Multiplication tables training.

Have you forgotten your multiplication tables? Or, maybe, have you children? Try this program and adopt it! The program remembers your good and bad answers. It will ask you more often the questions you don't know. There exists a French version, an English and a German one in the same package. There is also a Make.odc file, which uses the new packing feature of the BlackBox 1.4 version, and generates a stand-alone exe file.

Tabmult doesn't use any other CPC services.

StdCoded File <=> PacCoded File (41 / 21 kByte - Release 23-Oct-2004)


By Helmut Zinn

Birthday reminder.

Did you ever forget the birthday of your friend? Then you need this little program.

TboxBirthday uses the services of Ctls.

StdCoded File <=> PacCoded File (130 / 45 kByte - Release 25-Sep-2004)


By Helmut Zinn

Writing books with BlackBox.

The module TboxBook expands the BlackBox text editor with 4 useful commands:

That's all you need for writing documents with table of contents and hyperlinks. It makes the life much easier.

TboxBook uses the services of Pac, Ctls, TboxTimer and Info.

StdCoded File <=> PacCoded File (19 / 8 kByte - Release 25-Apr-2004)


By Helmut Zinn

Generate a package list for StdCoded and PacCoded files.

This module generate the list of all source files of one subsystem automatically. You can select all items of this list and use the menu [Tools][Encode File List] to create a StdCoded file of your subsystem.

TboxCoderList uses the services of Ctls, CpcMenus and Pac.

StdCoded File <=> PacCoded File (22 / 11 kByte - Release 30-Jul-2009)


By Gérard Meunier

Binary compare file.

Are you interested by this little module? It asks for two files and tests their equality at a binary level. I use it to test whether Pac works well or not. As it is interesting in a general way, perhaps you'd like to use it.

TboxCompFile doesn't use any other CPC services.

StdCoded File <=> PacCoded File (8 / 4 kByte - Release 1-Apr-2004)


By Helmut Zinn

How many days are left until...?

This module will answer that questions into the Log window.

TboxCountDown doesn't use any other CPC services.

StdCoded File <=> PacCoded File (7 / 4 kByte - Release 6-Jun-2007)


By Helmut Zinn

Mail Merge with e-Mails from Ebay.

Do you have to write the same letters with some small changes only? For Example: You receive an e-mail and you would like to generate an answer e-mail with inserting some data from the received one. Here is the solution for this task.

TboxEbay uses the services of Ctls.

StdCoded File <=> PacCoded File (26 / 12 kByte - Release 21-Dec-2004)


By Helmut Zinn

Read and write hex dump.

This is an extension of Oberon Microsystems hex file importer. It optionally outputs the printable representation in columns or lines in addition to the hex codes. In its default configuration it behaves exactly like the original. The original importer is from the Bernhard Treutwein's More utilities for BlackBox. I add an hex file exporter too. You can save the modified hex-code.

TboxHexConv doesn't use any other CPC services.

StdCoded File <=> PacCoded File (17 / 8 kByte - Release 6-Jul-2001)


By Helmut Zinn

All picture files rename to increasing sequential numbers.

I organize my photo archive in the following way: I create one folder for every year. This folder containing a folder for each month. After downloading the picture (*.jpg) from the camera into one folder, I delete all bad ones and then I rename the other ones with this procedure. It is still possible to download new picture into the same folder and rename them with this procedure again.

TboxPhoto uses the services of Pac, Ctls, Dos, TboxTimer and Info.

StdCoded File <=> PacCoded File (16 / 8 kByte - Release 27-May-2008)


By Helmut Zinn

Tea Time Alarm Clock.

Do you have a bug in your program? Let's have a break. It's tea time now. Is there any tea left? Do you need another cup of tea? Certainly you need the tea time alarm clock. We say in Germany: to wait and see (abwarten und Tee trinken). I'm sure after that break you find your bug immediately.

TboxTeaTime uses the services of Pac, Ctls, Dos, Babel, Util and Media.

StdCoded File <=> PacCoded File (321 / 166 kByte - Release 27-Mar-2003)


By Helmut Zinn

Some Text Editing Commands.

This module extend BlackBox with some basic text editing facilities. What it does:

I wrote this commands during my work on CpcLanguage. I used them with subsystem Omi together for creating and sorting Rsrc/Strings documents.

TboxText doesn't use any other CPC services.

StdCoded File <=> PacCoded File (23 / 10 kByte - Release 12-Jul-2008)


By Helmut Zinn

Measure the runtime of one procedure/module.

You can measure the run time of any module and procedure:
e.g. (!) "TboxTimerStart; MySubsystem.MyCommand; TboxTimer.Stop"
The result is in the Log window.

TboxTimer doesn't use any other CPC services.

StdCoded File <=> PacCoded File (9 / 5 kByte - Release 26-Oct-2000)


By Helmut Zinn

Text Translation by Words.

This module expand the Find and Replace command with a translation table. You can

A existing translation table can also used in the reverse direction.

TboxTranslate uses the services of Pac, Ctls and Dos.

StdCoded File <=> PacCoded File (38 / 18 kByte - Release 12-Jul-2008)


By Juan Antonio Ortega

Add a toolbar to the BlackBox window.

Do you like toolbars? Do you miss toolbars inside BlackBox? Don't wait any longer. Download this subsystem. With this subsystem you can add a toolbar to the BlackBox Component Builder.

Toolbar doesn't use any other CPC services.

StdCoded File <=> PacCoded File (58 / 33 kByte - Release 26-Jan-2007)


By Gérard Meunier and Helmut Zinn

Turbo Pascal to Component Pascal Translator.

This software converts Turbo Pascal source program to Component Pascal (Oberon-2). All exported identifier collected into one symbol table. The symbol table is used for name translation.

It features:

We recommend to format the result with the CpcBeautifier.

Tp2cp uses the services of Babel and Util.

StdCoded File <=> PacCoded File (131 / 52 kByte - Release 3-Apr-2013)


By Carl Glassberg

Text reader & formatter filter.

Trf is the abbreviation for Text reader / formatter. The subsystem Trf contains the following modules:

TrfFilter copies from an open text view the printable (ASCII and Latin-1) characters + cr + ht + para to a new text view. Other control code characters and Unicode are converted to a string representation of the equivalent hexadecimal character constant.

TrfUnbeautify converts control characters (except for cr and para) and Unicode characters to space (20X). It deletes leading and trailing space, and squeezes adjacent space within a line to 1 space character (20X). It removes colorization and makes everything a monochrome color (blue). Horizontal formatting is squeezed but vertical formatting is preserved.

TrfCrush is similar to Unbeautify but additionally converts multiple adjacent end-of-line to 1 end-of-line. Vertical formatting is crunched and horizontal formatting is squeezed.

TrfText unfold input paragraphs of multiple lines of text into single-line paragraphs. Repeatedly running this command will turn all input text into a single line.

TrfNrLines number lines in a text file. The first line is numbered 0.

Trf doesn't use any other CPC services.

StdCoded File <=> PacCoded File (44 / 21 kByte - Release 4-Jun-2014)


By Werner Bossert

Ttf Covering (TrueType Fonts, OpenType File Format).

TtfCovering scans TrueType Fonts and OpenType Font respectively, of the file type TTF and TTC. TrueType Collections TTC contain several fonts. The table BlocksAndFontsTab displays Range, Block, number of characters covering a font and the name of the font. The module UnicodeFontsGen can be generated.

Covering fonts are in alphabetical order and ascending order of the number of covering characters unless other priorities are prefered. The table Covering BlocksTab shows all ranges, blocks and number of characters covering a selected font.

Blocks.txt of the Unicode Standard Version 9.0.0 is used for Ranges and Block names.

Ttf uses the services of Pac, Ctls, Dos and UnicodeMappings .

StdCoded File <=> PacCoded File (192 / 88 kByte - Release 1-Aug-2016)


By Werner Bossert

Unicode Generators with Unicode Character Database.

To extend mappings and requests of letters, numbers and symbols to the full Unicode range or to the Basic Multilingual Plane (BMP) or to a part of the Unicode range to handle languages, module generators use information of the UnicodeData.txt.

The Unicode Consortium publishes in the Unicode Character Database (UCD) the text file UnicodeData.txt.

UCD (Unicode Standard Version 9.0.0 released 21-June-2016):
or look for the latest version of the UCD at

UnicodeData.txt is the database for the module generators Unicode­XXXGenerator (Unicode­Case­Generator, Unicode­IsCase­Generator, Unicode­Letter­Generator, Unicode­Number­Generator, Unicode­Specials­Generator, Unicode­Arabic­Generator, Unicode­Decomposition­Generator and Unicode­Bidirectional­Generator). The generated auxiliary files are simplified by Unicode­NormXXX (Unicode­Norm­Case, Unicode­Norm­IsCase, Unicode­Norm­Letter, Unicode­Norm­Number, Unicode­Norm­Specials, Unicode­Norm­Arabic, Unicode­Norm­Decomposition100H, Unicode­Norm­Decomposition, Unicode­Norm­Decomposition­Iter and Unicode­Norm­Bidirectional).

The result are the modules Unicode­XXX_Mapping (Unicode­Case_MappingGen, Unicode­IsCase_Mapping, Unicode­Letter_Mapping, Unicode­Number_Mapping, Unicode­Specials_Mapping, Unicode­Arabic_Mapping, Unicode­Decomposition100H_Mapping, Unicode­Decomposition_Mapping, Unicode­Decomposition­Iter_Mapping and Unicode­Unassigned_Mapping). The procedures in the generated modules consist of a CASE statement. The case expression can be of type character or integer.

UnicodeGenerators uses the services of Pac.

StdCoded File <=> PacCoded File (1182 / 407 kByte - Release 24-Jun-2016)


By Werner Bossert

Unicode Mappings with the generated Modules.

UnicodeMappings provide mappers for upper, lower or title case mapping, and also provide converters from Unicode (UTF-8, UTF-16, UTF-32; little or big endian) to other encodings or vice versa. Further examples for mapping and decomposiion of Unicode are shown.

The base for the Unicode Mappings are the published Unicode Character Database (UCD) by the Unicode Consortium in

UCD (Unicode Standard Version 9.0.0 released 21-June-2016):
or look for the latest version of the UCD at

UnicodeMappings contains all modules generated in UnicodeGenerators. Some of the generated mapping modules have been further simplified by hand. The encoding converter UnicodeConverterDlg includes XML-Conversion. To recognize the encoding and the endianness (little-endian order or big-endian order) byte order mark (BOM) is used. For XML files existing encoding-declaration is used. Changing the encoding: The encoding declaration can be optionally adapted or inserted. UnicodeConv provides UTF-8 import and export by file with the uni and XML extension.

In UnicodeConverterTests a few examples for the encoding conversions are shown.

UnicodeMappings uses the services of Pac, Ctls and Dos.

StdCoded File <=> PacCoded File (3286 / 1388 kByte - Release 24-June-2016)


By Gérard Meunier

Utility tools.

Util is a set of utility tools.

Util uses the services of Babel.

StdCoded File <=> PacCoded File (831 / 346 kByte - Release 29-Sep-2015)


By Gérard Meunier

Simulation of waves (Example of bitmap manipulation by WinApi calls).

It's just a little pool. And it may rain upon it.

Water uses the services of Babel and Util.

StdCoded File <=> PacCoded File (59 / 29 kByte - Release 23-Oct-2004)


By Marc Frei

Publishing BlackBox documents on Internet or Intranets.

Some time ago we have actually put together a very rough prototype of a BlackBox subsystem Web. The subsystem "Web" allows you to publish simple BlackBox documents and forms as web pages.

The documentation that is included assumes that the Web subsystem is used together with a CGI-capable web server (e.g. Apache or Microsoft IIS). In order to facilitate experimentation with our subsystem web, you need additionally Stewart Greenhill's lightweight web server "Dbu" which runs directly from within BlackBox.

Web uses the services of CommTCPAsync and Dbu.

StdCoded File <=> PacCoded File (209 / 86 kByte - Release 21-Sep-2007)


By Carl Glassberg, Gérard Meunier and Helmut Zinn

Analysing Web Log Files.

Would you like to know how many users visit your website? How many downloads they have done? Which downloads belong to the top 10? Here you are.

Webstat analyse the web server's log file. It produces usage statistic reports about hits, files, pages, visits, sites and bytes transfered. The result is separated in users, robots and total access. It also reports a top ten list of downloads and countries. Further it is possible to select more than one log file to create one report over a long piriod of time (e.g. one year).

This subsystem contains a nice tool which determine the country by IP address. You enter the IP address and get the country as result. The ip address to country database has about 200,000 records and 240 countries.

Webstat uses the services of Coco, TboxTimer, Util and optional the services of Pac, Ctls, Dos and Info.

StdCoded File <=> PacCoded File (2454 / 1036 kByte - Release 24-Feb-2014)


By Eugene Temirgaleev

List of open windows.

When you are opening more the 9 windows during your work then switching windows via the menu Window becomes inconvenient. I wrote a small program, which will list all open windows inside a dialog box and allows to switch them there. Here is that program. It may be also useful for you.

WorkWindows doesn't use any other CPC services.

StdCoded File <=> PacCoded File (10 / 5 kByte - Release 2-Apr-2008)


By Peter Cushnir

Using Document Object Model and Extensible Markup Language.

The subsystem Xmlcore is an implementation of the DOM Level 2 and a XML-parser, based on DOM.

DOM (Document Object Model) is a W3C definition of generic platform-independent API for presenting hierarchical document structures in computer's memory. You can read more abotut that topic at

XML (Extensible Markup Language) is a general-purpose specification for creating user defined markup languages. It makes it possible to define the content of a document separately from its formatting, making it easy to reuse that content in other applications or for other presentation environments.

Xmlcore purposed to parse, change and generate XML files into DOM stuctures as described in W3C (World Wide Web Consortium) recomendations

Xmlcore doesn't use any other CPC services.

StdCoded File <=> PacCoded File (199 / 92 kByte - Release 15-Apr-2013)


By Koen Desaeger and Helmut Zinn

Xy Games.

Subsystem Xy contains games based on XyColorPlane grafik. We offer something unique: a compromise between the mono-tasking of the original XYplane and the perfect cooperative multitasking of Blackbox. The following games are included: "IFS (Fractale)", "Life", "Lights on", "Minesweeper", "Reversi (Othello)", "Tic Tac Toe", "Vier Gewinnt (Connect Four)", "Pac Man", "Snake", "Tetris" and "Tron".

Xy uses the services of Ctls.

StdCoded File <=> PacCoded File (808 / 273 kByte - Release 20-Nov-2011)


By Vladimir Sidorov

A data compression library.

This is the port of Zlib to Component Pascal and BlackBox. Zlib implements the deflate lossless data compression algorithm. It provides in-memory compression and decompression functions, including integrity checks of the uncompressed data. Compression can be done in a single step if the buffers are large enough, or can be done by repeated calls of the compression function.

You find more information about Zlib at the
  Zlib Homepage:
  Zlib Manual:
  Zlib Technical Details:
  Zlib's Defalte Algorithm:

The data format used by the zlib library is described in
  RFC 1950 ZLIB Compressed Data Format Specification.
  RFC 1951 DEFLATE Compressed Data Format Specification.
  RFC 1952 GZIP file format specification.

The original Zlib is a C library and was written by Jean-loup Gailly (compression) and Mark Adler (decompression).

Zlib doesn't use any other CPC services.

StdCoded File <=> PacCoded File (373 / 129 kByte - Release 30-May-2012)

Introduction | Subsystems | Topics | Authors | Dates | Links | Downloads
A..C | D..H | I..N | O..S | T..Z

Last Updated 18th September 2016