Cities Boxの作者のYotioSoftです。
マップの描写、というのはクォータービューの描写方法ということでよろしいでしょうか?
クォータービューに関しては、こちら↓の質問を参考にさせていただいています。
http://hsp.tv/play/pforum.php?mode=pastwch&num=4910
1マス分色で塗りつぶす場合は、「qv」というマクロを利用しています。
/*チップサイズ(64x64)*/
#define chip_size 64
/*タイルを塗りつぶすためのマクロ*/
#define qv(%1,%2) macro1=%1*chip_size/2-camx-%2*chip_size/2,%1*chip_size/2+chip_size/2-camx-%2*chip_size/2:\
macro1(2)=%1*chip_size/2+chip_size-camx-%2*chip_size/2,%1*chip_size/2+chip_size/2-camx-%2*chip_size/2:\
macro2=%2*chip_size/4+chip_size/4-camy+%1*chip_size/4,%2*chip_size/4-camy+%1*chip_size/4:\
macro2(2)=%2*chip_size/4+chip_size/4-camy+%1*chip_size/4,%2*chip_size/4+chip_size/2-camy+%1*chip_size/4:\
gmode 3,,,128 : gsquare -1,macro1,macro2
/*クォータービューの座標(0,0)に1マス分塗りつぶしてみる*/
color 0, 255, 0
qv 0,0
建物や道路など、チップ(ここではchip.png)を表示させたい場合は、
「qv」を少し改造した「qv2」というマクロを利用しています。
※chip.png→
http://or2.mobi/data/img/148863.png
/*チップサイズ(64x64)*/
#define chip_size 64
/*クウォータービューの位置を取得するためのマクロ(チップ表示用)*/
#define qv2(%1,%2) macro1@=%1*chip_size/2-camx-%2*chip_size/2,%1*chip_size/2+chip_size/2-camx-%2*chip_size/2:\
macro1@(2)=%1*chip_size/2+chip_size-camx-%2*chip_size/2,%1*chip_size/2+chip_size/2-camx-%2*chip_size/2:\
macro2@=%2*chip_size/4+chip_size/4-camy+%1*chip_size/4,%2*chip_size/4-camy+%1*chip_size/4:\
macro2@(2)=%2*chip_size/4+chip_size/4-camy+%1*chip_size/4,%2*chip_size/4+chip_size/2-camy+%1*chip_size/4:\
/*クォータービューの座標(0,0)に1マス分塗りつぶしてみる*/
qv2 0,0
buffer 1 : picload "chip.png"
gsel 0
gmode 2
pos macro1, macro2-32 : gcopy 1, 0, 0, 64, 64
Cities Boxはまだまだ製作途中なので、結構ソースが汚かったりします。
そのため、上記のリンクを参考にされることをお薦めします。
長文失礼しました。