Make your own free website on



You need to create SIX files. A set of these files are provided as examples; the files ending with *.tMt and *.dMt referring to the college or the files ending with *.tSt and *.dSt referring to a School. To use them you need to convert them into *.TXT and *.DAT format respectively.


These files were purposely manipulated to simulate various kinds of difficulty you might encounter.


Details on how to type the six files can also be seen through the on-line Help provided.



Asas.TXT - Structure of your timetable

Guru.TXT - List of lecturer code and the full name.

Subjek.TXT - List of subject code and full name

Kumbilik.TXT - List of class and room names.

Makasas.TXT - Data to be arranged into a timetable.

Arahan.TXT - List of condition for timetable



You are advised to prepare them in the order stated above.





Check routines(UJI) are available for all the six data files above. These routines check to see if you have entered data according to the rules set by this program.





To help you further, you can generate


List of Lecturers (InGuru.TXT)

List of Subjek (InSubjek.TXT)

List of Rooms (InBilik.TXT)

Teaching Load (InKuliah.TXT)

Subject Allocation (InAgih.TXT)


The teaching load (InKuliah.TXT) will help you check if you entered data correctly. It will generate for every subject you name, the lecturers teaching each class and the frequency.


The subject allocation (InAgih.TXT) provides a frequency count for each subjects offered by class.



Definition of Terms


All six files to be prepared are text files. Each file consist of rows of information called records. Each record will consist of different kinds of information separated by a coma. Examples of information are class codes, time range, subject codes and switches.


Blank lines and lines which begin with the inverted coma are comment lines and thus not interpreted by the program.


Class codes are in the form of numbers which are defined in Kumbilik.TXT. It can take a range of values.


1-6 means classes 1 TO 6


1/6 means classes 1 AND 6


1-6/8 means classes 1 TO 6 AND 8


The total number of class codes separated by `/' cannot exceed 20 unless explicitly stated otherwise.


Time codes are in the form defined in Asas.TXT. It can take a range of values.


S5-R3 means Selasa 3rd period TO Rabu 3rd period


R1/K6 means Rabu 1st period AND Khamis 6th period


R1-R3/J1 means Rabu 1st period TO 3rd period AND Jumaat 1st period


Note that for both class codes and time codes, their references are in acceding order (for example, you can't state 6-10/2-3 because 2-3 is less than 6-10)


The total number of time codes separated by `/' cannot exceed 20 unless explicitly stated otherwise.


Lecturer names are in the form of codes as defined in Guru.TXT. Some of the forms codes for a slot in the timetable can take are

ABC ABC teaches during the slot

ABC\DEF ABC teaches but DEF is the reserve


ABC|DEF\GHI ABC and DEF share the slot, GHI is a reserve


A reserve is someone who is purposely kept free at that slot so that he can replace the main lecturer when he is away. The reserve lecturer will only satisfy the no clash condition found in Arahan 1


A person who shares a slot has his teaching load divided by the number of lecturers sharing. He will satisfy all the conditions defined in Arahan.


You cannot have the separator symbol `|' after `/'




The total number of teacher codes separated by `|' and `/' cannot exceed 20 unless explicitly stated otherwise.


Comas are reserved to act as separators.


This program accepts only capital letters and non blank codes as instruction but you may break this rule only as long as you use the UJI routine each time you tamper with this file. The Check routine will automatically convert them for you.


4, 1 - 31 / 35, R6 - R7


after going through the Check routine will become





Please refer to the on-line help for the format for each file.