
                            PAIN SIZE CODING COMPO
                            -====================-

                           by Dake/CDX & Zaphod/NDS

Hi Fellow Coders 

We're back again with a new size coding compo, a lot of people told us
that they prefer size coding compo instead of speed compo, ok,
so here're all rules/informations of this new challenge. You can save
this text in the current directory by pressing the key 's'.

DEADLINE : You have 2 months to code your entry, just check sometimes :
           http://www.omedia.ch/pages/dake/coding.htm
           We'll put the exact deadline's date in next Pain.


The Goal
--------

The goal is to draw some rectangles on the screen in mode 013h (320x200-256c).
There can be 5 different shapes on the screen (not all at the same time, only
one):

                            320
    I------------------------------------------------I

    .-----------------------------------------------. ---
                           |                         |
       BLOCK  n1          |        BLOCK n2        |
                           |                         |
              .-------------------------.            | 
              |                         |            | 
    __________|        BLOCK n5        |__________  | 2
              |                         |            | 0
              |                         |            | 0
              `-------------------------'            |
                           |                         |
        BLOCK n3          |        BLOCK n4        |
                           |                         |
    `-----------------------------------------------' ---


   Here're some usefull coords of each block, if you have problems to
   find a coord, check the file BLOCKS.PCX and the example which
   are in CODING.ZIP :

=============================================================================
  (0,0)
    .-----------------------. (159,0)      
    |                       |
    |       BLOCK 1         |   
    |                       |   
    |            .----------' (159,49)
    |            |           
                
    `------------' (79,100)                         
=============================================================================    
   (160,0) 
    .-----------------------. (319,0)
    |                       |
    |      BLOCK 2          |  
    |                       |  
    `------------.          |
  (160,49)       |          |
                 |          |
                 `----------'
                (240,100)
=============================================================================
  (0,101)      (79,101)
    .------------.
    |            |           
    |            | 
                __________.(159,51)        
    |                       |
    |       BLOCK 3         |   
    |                       |   
    `-----------------------'(159,199)  
=============================================================================
       (240,101).___________.(319,101)
                |           |
    (160,151)   |           | 
     .__________|           |
                           |
           BLOCK 4         |
                           |
     `----------------------'
   (160,199)
=============================================================================
  (80,50)   
     .______________________.
                           
                           
             BLOCK 5       
                           
                           
     `----------------------'(239,150)

=============================================================================


All Steps
---------

----------------------------------------------------------------------------
1. Wait for a key (0-9 will be used), this number is called NBB.
   If NBB > 5 or NBB=0 then go to step 6.

2. Wait for a 2nd key (still 0-9), this number is called CLR. If
   CLR = 0 then go to step 6.

3. Enter in mode 013h

4. Draw the filled block NBB (1-5) of color CLR on the screen

5. Wait until the user press a key (space bar will be used)

6. Set text mode 80x25 (03h)

7. Return to DOS without crash
----------------------------------------------------------------------------

Egs :                   

If the user press the key 1 and 9, then draw the block 1 of color 9
on the screen. Your screen will look like this :

  .--------------------.
                 = color 9
            
                
                      
                      
                      
  `--------------------'

Rules - facts - tips
--------------------

* The file must be a COM

* At the start, AX=0 & BX=0, others registers are unknown

* You don't have to clear the screen at startup

* You _can't_ use INT 010h to put pixels on the screen, so write 
  your pixels at 0a000h.

* You _can't_ pack your COM file :D

* Don't store your blocks in the COM like sprites :))

* Please send us the COM file + the source 

* _PLZ SEND_ beta-versions of your entry ! so we'll be able to make
  a little chart (without the name and the exact size...
  for example, 233 bytes = 23x) and to tell you if your entry is ok with
  the rules.

* Entries will be tested on a 486sx25, a p66 and a k6-amd 233

* The winner will be famous in Switzerland but gets nothing :)

* The loosers are kewl because they tried this compo. We like them ;)

Ok, don't hesitate to ask us if you have a problem, send all your
entries to Dake (dake@omedia.ch). We're often on IRC, just check
the channels #chscene and #coders (IRCNET). Finally, you should
have a look on "http://www.omedia.ch/pages/dake/coding.htm" for all
news and chart.

Thanx and good luck ;)

Zaphod/NDS - zaphod@datacomm.ch
Dake/CDX - dake@omedia.ch


