So. I got this big lump of code. It generates up to 75 numbers (2
digits) on a screen. Now I have 8 rows of "stupid" code (no algorithms),
and I'm sure there must be some easier way.
(Notes:
getalvec is an array (15 downto 0) of 8x8 ram for characters
image is what I project on the screen (to be filtered with some
rgbvalues)
index is the current number being drawn. It is used to read from a (75
downto 0) vector if that number should be highlighted or not
)
For the full file, see attachment
1  if(2x>=14 AND 2x<30) then

2  if(2y >=140 AND 2y<156) then

3  image := getalvec(0) (63((x7) + 8*(x70) ));

4  index := 1;

5  elsif(2y >=166 AND 2y <182) then

6  image := getalvec(0) (63((x7) + 8*(y83) ));

7  index := 2;

8  elsif(2y >=192 AND 2y<208) then

9  image := getalvec(0) (63((x7) + 8*(y96) ));

10  index := 3;

11  elsif(2y >=218 AND 2y<234) then

12  image := getalvec(0) (63((x7) + 8*(y109) ));

13  index := 4;

14  elsif(2y >=244 AND 2y<260) then

15  image := getalvec(0) (63((x7) + 8*(y122) ));

16  index := 5;

17  elsif(2y >=270 AND 2y<286) then

18  image := getalvec(0) (63((x7) + 8*(y135) ));

19  index := 6;

20  elsif(2y >=296 AND 2y<312) then

21  image := getalvec(0) (63((x7) + 8*(y148) ));

22  index := 7;

23  elsif(2y >=322 AND 2y<338) then

24  image := getalvec(0) (63((x7) + 8*(y161) ));

25  index := 8;

26  else

27  image := '0';

28  index := 0;

29  end if;

30  elsif(next) %etc..
