6. Software Öùôïñõèìéêïý

Ôï ëïãéóìéêü ôïõ óõóôÞìáôïò äåí ðåñéãñÜöåôáé åäþ åîáíôëçôéêÜ, åíþ ïé áëãüñéèìïé äßíïíôáé ó÷çìáôéêÜ óå äéáãñÜììáôá ñïÞò. Óêïðüò ìáò åßíáé íá ðåñéãñáöåß ÷ùñßò êïõñáóôéêÝò ëåðôïìÝñåéåò ç ëåéôïõñãßá ôïõ óõóôÞìáôïò.

6.1 ÂÁÓÉÊÅÓ ÄÏÌÅÓ ÊÁÉ ÌÅÔÁÂËÇÔÅÓ

Ç âáóéêüôåñç äïìÞ ðïõ ÷ñçóéìïðïéåßôáé åßíáé ï "ðßíáêáò åöÝ" ðïõ äéáôçñåßôáé óôçí flash RAM($4000). Åêåß åßíáé áðïèçêåõìÝíá ìå óõãêåêñéìÝíï ôñüðï "óêçíÝò" ôùí ïðôéêþí åöÝ. ÊÜèå óêçíÞ ðåñéÝ÷åé ðëçñïöïñßåò ãéá 16 "öþôá" (ëÜìðåò, spots, ðñïâïëåßò, ñïìðïôéêÜ, laser, ê.ë.ð.) ð.÷. Üíáøå, óâÞóå, Üëëáîå ÷ñþìá ê.ë.ð. Ç ðëçñïöïñßá áõôÞ ðåñéÝ÷åôáé óå 32 bytes áíÜ æåýãç ôçò ìïñöÞò : address, data. ÓõíïëéêÜ ðåñéÝ÷ïíôáé 512 óêçíÝò óå 32 ïìÜäåò ôùí 16, äçëáäÞ 16Ê ðëçñïöïñßáò, üóç åßíáé ç flash RAM.

$4000 ÓÊÇÍÇ 1
$4020 ÓÊÇÍÇ 2
$4040 ÓÊÇÍÇ 3
$4060 ÓÊÇÍÇ 4
......
......
......
$7F80 ÓÊÇÍÇ 509
$7FA0 ÓÊÇÍÇ 510
$7FC0 ÓÊÇÍÇ 511
$7FE0 ÓÊÇÍÇ 512

Ðßíáêáò FX

Áí ç address Ý÷åé most significant bit 0 ôüôå áíáöÝñåôáé óå óåéñéáêÞ èýñá êáé ôï data óôÝëíåôáé åêåß. Áí åßíáé 1, ôüôå áíáöÝñåôáé óå module ôïõ controller ïðüôå óôÝëíïíôáé óôçí CENTRONICS äéáäï÷éêÜ ç address êáé ôï data. Ì' áõôü ôïí ôñüðï ðåñéïñéæüìáóôå óå 128 modules ðïõ åßíáé üìùò áñêåôÜ. Ï ÷ùñéóìüò ôùí óêçíþí óå ïìÜäåò (32) ãßíåôáé ëüãù ôïõ music mode ëåéôïõñãßáò ðïõ ðåñéãñÜöåôáé ðéï êÜôù.

Ç ìåôáâëçôÞ mode ÷ñçóéìïðïéåßôáé ãéá ôçí äéÜêñéóç ôùí ôñüðùí ëåéôïõñãßáò. Ç test (áíé÷íåýåôáé óôï C port ôïõ 8255) äåß÷íåé áí ç ìç÷áíÞ åßíáé óå test mode (÷ñçóéìïðïéåßôáé ãéá Ýëåã÷ï) ç ü÷é. Ïé I, J, êáé × åßíáé âïçèçôéêïß ìåôñçôÝò.O F åßíáé ï óõíôåëåóôÞò äéáìüñöùóçò ôïõ tempo óå auto mode.

6.2 MODES ËÅÉÔÏÕÑÃÉÁÓ

Ïé äõíáôïß ôñüðïé ëåéôïõñãßáò (modes) åßíáé ôñåéò :

Ç ìåôáâëçôÞ mode ðáßñíåé ìßá áð' áõôÝò ôéò ôéìÝò êáé ìðïñåß íá áëëÜîåé áð´ôï ôåñìáôéêü.

6.3 ÐÅÑÉÃÑÁÖÇ ÔÏÕ ÊÕÑÉÏÕ ÐÑÏÃÑÁÌÌÁÔÏÓ

Ç êåíôñéêÞ ñïõôßíá ðïõ ôñÝ÷åé ôï óýóôçìá êÜíåé ðåñßðïõ ôá åîÞò:

6.4 ÐÅÑÉÃÑÁÖÇ ÔÙÍ ÂÁÓÉÊÙÍ ÕÐÏÑÏÕÔÉÍÙÍ

6.4.1 ÁÑ×ÉÊÏÐÏÉÇÓÅÉÓ

Åäþ äßíïíôáé áñ÷éêÝò ôéìÝò óôéò âáóéêÝò ìåôáâëçôÝò.Ïé ìåôñçôÝò É,J,× ðáßñíïõí ôçí ôéìÞ 1. Ôï tempo ãßíåôáé 2 Çz (äçëáäÞ 120 b.p.s.) êáé ôï mode auto. ÔÝëïò ãßíïíôáé enable êÜèå åßäïõò interrupts.

6.4.2 TESTIT

Ç ñïõôßíá áõôÞ åêôåëåß Ýíá ðñïò Ýíá üëá ôá åöÝ (óêçíÝò) êõêëéêÜ ÷ùñßò íá óôáìáôÜ, Þ íá ìðáßíåé óå êáíïíéêÞ ëåéôïõñãßá. ÕðÜñ÷åé ìüíï ãéá Ýëåã÷ï.

6.4.3 ÅÊÔÅËÅÓÇ ÔÏÕ J ÅÖÅ ÔÇÓ É ÏÌÁÄÁÓ

Óôçí ïõóßá õðïëïãßæåé ðïéï óõãêåêñéìÝíï åöÝ (óêçíÞ) ôïõ ðßíáêá èá åêôåëåóôåß.Áõôü èá åßíáé 32 åðß ôïí áñéèìü ïìÜäáò óõí áñéèìü ìÝëïõò ôçò ïìÜäáò áõôÞò. Êáôüðéí åêôåëåßôáé ç óõãêåêñéìÝíç óêçíÞ.

6.4.4 ÅÊÔÅËÅÓÇ ÔÏÕ É ÅÖÅ

ÁõôÞ åßíáé ìéá ðïëý óçìáíôéêÞ ñïõôßíá ãéáôß ïõóéáóôéêÜ öÝñåé üëï ôï âÜñïò ôçò ïäÞãçóçò ôùí öùôïñõèìéêþí, äçëáäÞ ôçò áðïóôïëÞò óå áõôÜ ðëçñïöïñéþí ãéá êÜðïéá áëëáãÞ óôç ëåéôïõñãßá ôïõò. Ïé ðëçñïöïñßåò áõôÝò âñßóêïíôáé óôïí ðßíáêá ôùí åöÝ. ÊÜèå óêçíÞ áðïôåëåßôáé áðü 16 æåýãç bytes, Ýíá ãéá êÜèå "öùôéóôéêÞ óõóêåõÞ" ðïõ åðçñåÜæåé. ÊÜèå æåýãïò åßíáé ìéá äéåýèõíóç (ôçò óõóêåõÞò) êáé Ýíá data ðïõ åßíáé ïõóéáóôéêÜ ç ïäçãßá ðñïò ôç óõóêåõÞ. Ç ñïõôßíá åëÝã÷åé ðïõ áíáöÝñåôáé ç äéåýèõíóç êáé óôÝëíåé ôï data.

6.4.5 ÅÎÕÐÇÑÅÔÇÓÇ ÔÅÑÌÁÔÉÊÏÕ ÊÁÉ MOUSE

Ôï ôåñìáôéêü êáé ôï mouse åßíáé ôá êýñéá åñãáëåßá ðïõ äéáèÝôåé ï ÷åéñéóôÞò ôïõ óõóôÞìáôïò ãéá íá ôï åëÝãîåé. Ï Ýëåã÷ïò ãéá ðéèáíÞ åíôïëÞ áð' ôï ôåñìáôéêü Þ ôï mouse ãßíåôáé ðïëý óõ÷íÜ êáé áìÝóùò ãßíåôáé åîõðçñÝôçóç. Äåí äßíåôáé åäþ ðåñéãñáöÞ ôïõ ôñüðïõ ðïõ ãßíåôáé áõôÞ ç åîõðçñÝôçóç ãéáôß êÜôé ôÝôïéï èá Þôáí ïãêþäåò êáé Ýîù áðü ôïõò óôü÷ïõò ìáò. ÃåíéêÜ ôï ôåñìáôéêü ìðïñåß íá êÜíåé ôá åîÞò :

Ôï mouse êÜíåé ðéï åýêïëï ôï ÷åéñïêßíçôï ÷åéñéóìü.