Zaplň celou obrazovku spirálou ze znaků + - + | + +. (c) dement, cpoc Napiš co nejkratší program splňující tyto podmínky: (1) Program předpokládá, že je spuštěn z textmódu. V něm také zůstane a celou obrazovku vyplní "spirálou", viz obrázek. --------------+ +------------+| |+----------+|| ||+--------+||| |||--------+||| ||+---------+|| |+-----------+| +-------------+ (2) Musí fungovat ve všech rozlišeních splňujících 2 < výška < šířka < 200. Rozlišení se dá korektně zjistit buď voláním příslušných služeb BIOSu nebo přečtením přímo z jeho datových struktur. Šířka obrazovky je ve wordu na adrese 0:44Ah, výška-1 je v bajtu na adrese 0:484h. Vše je uváděno ve znacích. (3) Videopaměť (resp. okno do videopaměti) začíná na adrese B800:0 a je dlouhé 32KB. Předpokládáme, že se do těch 32KB vejde celá obrazovka. Je povolené použít ke kreslení služeb BIOSu. (4) Poslední znak na vnitřním konci spirály je volitelný, buď rovná čára jako na obrázku nebo správně orientovaný rohový znak. (5) Program nemění atributy znaků (to co je na lichých adresách videopaměti), kreslí pouze znaky (na sudé adresy). (6) Program po nakreslení spirály čeká na událost "stisk klávesy". Stiskem se rozumí buď fyzický stisk nebo alespoň tvrzení BIOSu či DOSu, že ke stisku došlo. Po stisku ESC musí program skončit, reakce na ostatní klávesy je volitelná - buď skončit nebo dál čekat. Lze se spolehnout na BIOS a DOS, že stisk ESC skutečně ohlásí. (7) Program splňuje standardní podmínky . výheň