Jump to content
IGNORED

IntyBASIC compiler


nanochess

Recommended Posts

Nice :thumbsup:

 

Minor usability suggestion - make your BITMAP command support _ and X as well as 0 and 1. Then Kiwi's bitmaps could look like this:

BITMAP "XXXX__XX"
BITMAP "_XXX_X_X"
BITMAP "X_X___X_"
BITMAP "________"
BITMAP "__XXXXXX"
BITMAP "_X_X_XXX"
BITMAP "__X_X_X_"
BITMAP "________"

BITMAP "_______X"
BITMAP "_X___X__"
BITMAP "_X_X_X__"
BITMAP "___X____"
BITMAP "X_____X_"
BITMAP "X_X___X_"
BITMAP "__X_X___"
BITMAP "____X__X"

BITMAP "XXX_XXX_"
BITMAP "XXX_XXX_"
BITMAP "XX_X_XX_"
BITMAP "__XXX___"
BITMAP "XX_X_XX_"
BITMAP "XXX_XXX_"
BITMAP "XXX_XXX_"
BITMAP "________"

BITMAP "X_X_X_X_"
BITMAP "X_XXX_XX"
BITMAP "X_XXX_XX"
BITMAP "___X___X"
BITMAP "X_X_X_X_"
BITMAP "XXX_XXX_"
BITMAP "XXX_XXX_"
BITMAP "_X___X__"

BITMAP "________"
BITMAP "___X_X__"
BITMAP "_X_X_X_X"
BITMAP "_X_X_X_X"
BITMAP "___X_X_X"
BITMAP "_X_X_X_X"
BITMAP "_X_X_X_X"
BITMAP "________"


BITMAP "_X_X_XX_"
BITMAP "XXX_X_XX"
BITMAP "XX____XX"
BITMAP "X_XXXX__"
BITMAP "X_X__XXX"
BITMAP "X_XXXXX_"
BITMAP "X_XXXX_X"
BITMAP "_X____X_"

BITMAP "________"
BITMAP "_XXXXXX_"
BITMAP "X__XX__X"
BITMAP "X_X__X_X"
BITMAP "X_XXXX_X"
BITMAP "X_XXXX_X"
BITMAP "XX_XX_XX"
BITMAP "_XX__XX_"

BITMAP "________"
BITMAP "__X_X_X_"
BITMAP "_X_X_X__"
BITMAP "__X_X_X_"
BITMAP "_X_XXXX_"
BITMAP "__XXXXX_"
BITMAP "________"
BITMAP "________"

BITMAP "X_XXXX_X"
BITMAP "_XXXXXX_"
BITMAP "X______X"
BITMAP "_X_XX_X_"
BITMAP "_XXXXXX_"
BITMAP "__XXXX__"
BITMAP "XXX__XXX"
BITMAP "_XXXXXX_"

BITMAP "XXXXXXXX"
BITMAP "X_X__X_X"
BITMAP "X_XXXX_X"
BITMAP "________"
BITMAP "__X__X__"
BITMAP "_XX__XX_"
BITMAP "________"
BITMAP "XXX__XXX"

I've always found it significantly easier to "see" and change graphics in code when using _ and X. For SF2 the main snowman graphic is defined like this:

FrostyGraphic0:
        .byte zz___XX___
        .byte zz___XX___
        .byte zz___XX___
        .byte zz___XX___
        .byte zz__XXXX__
        .byte zz___XXX__
        .byte zz__X_X___
        .byte zz_XXX_XX_
        .byte zz_X_XXXX_
        .byte zz_X____X_
        .byte zz_X___XX_
        .byte zz_XX__XX_
        .byte zz__XXXX__
        .byte zzXXXXXX__
        .byte zz__XXXX__
        .byte zz_XXX_XX_
        .byte zzXXXXXXXX
        .byte zzXXXXXXXX
        .byte zzXXXXX_XX
        .byte zzXXXXXXXX
        .byte zzXXXXXXXX
        .byte zzXXXXX_XX
        .byte zzXXXXXXXX
        .byte zzXXXXXXXX
        .byte zz_XXXXXX_
        
FrostyGraphic1:
        .byte zz___XX___
        .byte zz___XX___
        .byte zz___XX___
        .byte zz___XX___
        .byte zz__XXXX__
        .byte zz___XXX__
        .byte zz__X_X___
        .byte zz_XXX_XX_
        .byte zz_X_XXXX_
        .byte zz_X____X_
        .byte zz_XX__XX_
        .byte zz_XXXXXX_

FrostyGraphic2:
        .byte zz___XX___
        .byte zz___XX___
        .byte zz___XX___
        .byte zz___XX___
        .byte zz__XXXX__
        .byte zz___XXX__
        .byte zz__X_X___
        .byte zz_XXX_XX_
        .byte zz_XXXXXX_
        .byte zz_X_XXXX_
        .byte zz_XX___X_
        .byte zz_XXXXXX_

FrostyGraphic3:
        .byte zz___XX___ ;  0
        .byte zz___XX___ ;  1
        .byte zz___XX___ ;  2
        .byte zz___XX___ ;  3
        .byte zz__XXXX__ ;  4
        .byte zz___XXX__ ;  5
        .byte zz__X_X___ ;  6
        .byte zz_XXX_XX_ ;  7
        .byte zz_XXXXXX_ ;  8
        .byte zz_XXXXXX_ ;  9
        .byte zz_XX__XX_ ; 10
        .byte zz_XXXXXX_ ; 11

FrostyGraphic4:
        .byte zz___XX___ ;  0
        .byte zz___XX___ ;  1
        .byte zz___XX___ ;  2
        .byte zz___XX___ ;  3
        .byte zz__XXXX__ ;  4
        .byte zz___XXX__ ;  5
        .byte zz__X_X___ ;  6
        .byte zz_XXX_XX_ ;  7
        .byte zz_XXXXXX_ ;  8
        .byte zz_XXXXXX_ ;  9
        .byte zz_XX_XXX_ ; 10
        .byte zz_XXXXXX_ ; 11

FrostyGraphic5:
        .byte zz___XX___ ;  0
        .byte zz___XX___ ;  1
        .byte zz___XX___ ;  2
        .byte zz___XX___ ;  3
        .byte zz__XXXX__ ;  4
        .byte zz___XXX__ ;  5
        .byte zz__X_X___ ;  6
        .byte zz_XXX_XX_ ;  7
        .byte zz_XXXXXX_ ;  8
        .byte zz_XX__XX_ ;  9
        .byte zz_X_XXXX_ ; 10
        .byte zz_XXXXXX_ ; 11

FrostyGraphic6:
        .byte zz___XX___ ;  0
        .byte zz___XX___ ;  1
        .byte zz___XX___ ;  2
        .byte zz___XX___ ;  3
        .byte zz__XXXX__ ;  4
        .byte zz___XXX__ ;  5
        .byte zz__X_X___ ;  6
        .byte zz_XXX_XX_ ;  7
        .byte zz_XXXXXX_ ;  8
        .byte zz_XX___X_ ;  9
        .byte zz_X_XXXX_ ; 10
        .byte zz_XXXXXX_ ; 11    
  • Like 1
Link to comment
Share on other sites

Or make it definable by the programmer by using the equivalent of something like C's #pragma. Then you can cater to all tastes.

 

I vote for this. I personally prefer "." and "#" for my graphics definitions:

 

 

 
; 00     01       02       03       04       05       06       07       08       09       0A       0B       0C       0D       0E       0F       10       11       12       13
:COL=4,0 :COL=4,0 :COL=2,0 :COL=4,0 :COL=4,1 :COL=4,0 :COL=1,0 :COL=1,0 :COL=1,0 :COL=1,0 :COL=1,0 :COL=1,0 :COL=1,0 :COL=1,0 :COL=1,0 :COL=1,0 :COL=1,0 :COL=1,0 :COL=2,1 :COL=2,1 ; 00
......#. ........ .......x ######## ###..... ........ ........ ........ ........ ........ ........ ........ ........ ........ ........ ........ ........ ........ ######## ########
......#. ........ ..##.... ...##### #....... ........ ........ ........ ........ ........ ........ ........ ........ ........ ........ ........ ........ ........ ######## ########
......## ........ .####... .......# #....... ........ ........ ........ ........ ........ ........ ........ ........ ........ ........ ........ ........ ........ ######## ########
......## ........ ..##.... .......# ##...... ........ ........ ........ ........ ........ ........ ........ ........ ........ ........ ........ ........ ........ ######## ########
......## ........ ........ ........ ###..... ........ ........ ........ ........ ........ ........ ........ ........ ........ ........ ........ ........ ........ ######## ########
.....### ........ ........ ........ #######. .#...... ........ ........ ........ ........ ........ ........ ........ ........ ........ ........ ........ ........ ######## ########
.....### #....... ........ ........ ######## ####.... ........ ........ ........ ........ ........ ........ ........ ........ ........ ........ ........ ........ ######## ########
.....### #....... ........ .......# ######## ###..... ........ ........ ........ ........ ........ ........ ........ ........ ........ ........ ........ ........ ######## ########
:COL=4,1 :COL=4,0 :COL=8,0 :COL=0,0 :COL=4,0 :COL=4,1 :COL=4,0 :COL=1,0 :COL=1,0 :COL=1,0 :COL=1,0 :COL=1,0 :COL=1,0 :COL=1,0 :COL=1,0 :COL=1,0 :COL=1,0 :COL=1,0 :COL=2,1 :COL=2,1 ; 01
....##.# #....... ........ .......o ######## ###..... ........ ........ ........ ........ ........ ........ ........ ........ ........ ........ ........ ........ ######## ########
....##.. #....... ...#.... ..##.... ...##### #....... ........ ........ ........ ........ ........ ........ ........ ........ ........ ........ ........ ........ ######## ########
...###.. ##...... ...#.... .####... .......# #....... ........ ........ ........ ........ ........ ........ ........ ........ ........ ........ ........ ........ ######## ########
...##... .#...... ..###... ..##.... .......# ##...... ........ ........ ........ ........ ........ ........ ........ ........ ........ ........ ........ ........ ######## ########
..###... ........ #######. ........ ........ ###..... ........ ........ ........ ........ ........ ........ ........ ........ ........ ........ ........ ........ ######## ########
..##.... ......#. ..#.#... ........ ........ #######. .#...... ........ ........ ........ ........ ........ ........ ........ ........ ........ ........ ........ ######## ########
.##..... ......## ...#.... ........ ........ ######## ####.... ........ ........ ........ ........ ........ ........ ........ ........ ........ ........ ........ ######## ########
##...... .......# ...#.... ........ .......# ######## ###..... ........ ........ ........ ........ ........ ........ ........ ........ ........ ........ ........ ######## ########
:COL=1,1 :COL=6,0 :COL=4,0 :COL=4,0 :COL=4,0 :COL=4,0 :COL=4,1 :COL=1,0 :COL=1,0 :COL=1,0 :COL=1,0 :COL=1,0 :COL=1,0 :COL=1,0 :COL=1,0 :COL=1,0 :COL=1,0 :COL=1,0 :COL=1,0 :COL=2,1 ; 02
........ ........ ##...... ........ ........ ......## ##...... ........ ........ ........ ........ ........ ........ ........ ........ ........ ........ ........ ........ ######## ; We need this extra tile
........ ..####.. ###..... ........ ........ .......# ##...... ........ ........ ........ ........ ........ ........ ........ ........ ........ ........ ........ ........ ######## ; for the "OF" letters.
........ .######. .####... ........ ........ ........ ###..... ........ ........ ........ ........ ........ ........ ........ ........ ........ ........ ........ ........ ########
........ ######## ...####. ........ ........ ........ ####.... ........ ........ ........ ........ ........ ........ ........ ........ ........ ........ ........ ........ ########
........ ######## .....### ####.... ........ ........ #####... ........ ........ ........ ........ ........ ........ ........ ........ ........ ........ ........ ........ ########
........ #.###### ........ ######## ##...... .......# #######. ........ ........ ........ ........ ........ ........ ........ ........ ........ ........ ........ ........ ########
........ .#..###. ........ ...##### ######.. ...##### .....#.. ........ ........ ........ ........ ........ ........ ........ ........ ........ ........ ........ ........ ########
........ ..####.. ........ ........ ..###### ######## ........ ........ ........ ........ ........ ........ ........ ........ ........ ........ ........ ........ ........ ########
:COL=1,1 :COL=1,1 :COL=1,0 :COL=1,0 :COL=4,0 :COL=4,1 :COL=4,0 :COL=4,0 :COL=1,0 :COL=1,0 :COL=1,0 :COL=1,0 :COL=1,0 :COL=1,0 :COL=1,0 :COL=1,0 :COL=1,0 :COL=1,0 :COL=2,1 :COL=2,1 ; 03
######## ........ ........ ........ ######## ###..... ........ ........ ........ ........ ........ ........ ........ ........ ........ ........ ........ ........ ######## ########
######## ........ ........ ........ ...##### #....... ........ ........ ........ ........ ........ ........ ........ ........ ........ ........ ........ ........ ######## ########
######## ........ ........ ........ .......# #....... ........ ........ ........ ........ ........ ........ ........ ........ ........ ........ ........ ........ ######## ########
######## ........ ........ ........ .......# ##...... ........ ........ ........ ........ ........ ........ ........ ........ ........ ........ ........ ........ ######## ########
######## ........ ........ ........ ........ ###..... ........ ........ ........ ........ ........ ........ ........ ........ ........ ........ ........ ........ ######## ########
######## ........ ........ ........ ........ #######. ........ ........ ........ ........ ........ ........ ........ ........ ........ ........ ........ ........ ######## ########
######## ........ ........ ........ ........ ######## #....#.. ...#.... ........ ........ ........ ........ ........ ........ ........ ........ ........ ........ ######## ########
######## ........ ........ ........ .......# ######## ######## #####... ........ ........ ........ ........ ........ ........ ........ ........ ........ ........ ######## ########
:COL=1,1 :COL=0,0 :COL=1,0 :COL=2,0 :COL=8,0 :COL=4,0 :COL=4,0 :COL=4,1 :COL=4,0 :COL=1,0 :COL=1,0 :COL=1,0 :COL=1,0 :COL=1,0 :COL=1,0 :COL=1,0 :COL=1,0 :COL=1,0 :COL=2,1 :COL=2,1 ; 04
........ .......x ........ .......o ........ ......## ######## ###..... ........ ........ ........ ........ ........ ........ ........ ........ ........ ........ ######## ########
........ ..##.... ........ ..##.... ...#.... ........ ######## #....... ........ ........ ........ ........ ........ ........ ........ ........ ........ ........ ######## ########
........ .####... ........ .####... ...#.... ........ ......## #....... ........ ........ ........ ........ ........ ........ ........ ........ ........ ........ ######## ########
........ ..##.... ........ ..##.... ..###... ........ .......# ##...... ........ ........ ........ ........ ........ ........ ........ ........ ........ ........ ######## ########
........ ........ ........ ........ #######. ........ ........ ###..... ........ ........ ........ ........ ........ ........ ........ ........ ........ ........ ######## ########
........ ........ ........ ........ ..#.#... ........ ........ #######. .#...... ........ ........ ........ ........ ........ ........ ........ ........ ........ ######## ########
........ ........ ........ ........ ...#.... ........ ........ ######## ####.... ........ ........ ........ ........ ........ ........ ........ ........ ........ ######## ########
........ ........ ........ ........ ...#.... ........ ......## ######## ###..... ........ ........ ........ ........ ........ ........ ........ ........ ........ ######## ########
:COL=7,1 :COL=4,0 :COL=4,0 :COL=9,0 :COL=1,0 :COL=5,0 :COL=1,0 :COL=4,0 :COL=4,1 :COL=4,0 :COL=1,0 :COL=1,0 :COL=1,0 :COL=1,0 :COL=1,0 :COL=1,0 :COL=1,0 :COL=1,0 :COL=2,1 :COL=2,1 ; 05
.......o ......#. ........ ..##...x ........ ........ ........ ######## ###..... ........ ........ ........ ........ ........ ........ ........ ........ ........ ######## ########
..##.... ......#. ........ .####... ........ ..####.. ........ ...##### #....... ........ ........ ........ ........ ........ ........ ........ ........ ........ ######## ########
.####... ......## ........ ..##.... ........ .######. ........ .......# #....... ........ ........ ........ ........ ........ ........ ........ ........ ........ ######## ########
..##.... ......## ........ ........ ........ ######## ........ .......# ##...... ........ ........ ........ ........ ........ ........ ........ ........ ........ ######## ########
........ ......## ........ ........ ........ ######## ........ ........ ###..... ........ ........ ........ ........ ........ ........ ........ ........ ........ ######## ########
........ .....### ........ .....##. ........ #.###### ........ ........ #######. .#...... ........ ........ ........ ........ ........ ........ ........ ........ ######## ########
........ .....### #....... ....#### ........ .#..###. ........ ........ ######## ####.... ........ ........ ........ ........ ........ ........ ........ ........ ######## ########
........ .....### #....... .....##. ........ ..####.. ........ .......# ######## ###..... ........ ........ ........ ........ ........ ........ ........ ........ ######## ########
:COL=0,1 :COL=4,0 :COL=4,0 :COL=4,0 :COL=4,0 :COL=4,0 :COL=2,0 :COL=5,0 :COL=4,0 :COL=4,1 :COL=1,0 :COL=1,0 :COL=1,0 :COL=1,0 :COL=1,0 :COL=7,0 :COL=7,0 :COL=1,0 :COL=2,1 :COL=2,1 ; 06
........ ....##.# ##...... ........ ........ ........ ..##...o .......x ......## ##...... ........ ........ ........ ........ ........ ........ ........ ........ ######## ########
.....#.. ....##.. ###..... ........ ........ ........ .####... ..##.... .......# ##...... ........ ........ ........ ........ ........ ........ ........ ........ ######## ########
........ ...###.. .####... ........ ........ ........ ..##.... .####... ........ ###..... ........ ........ ........ ........ ........ ........ ........ ........ ######## ########
...#.... ...##... ...####. ........ ........ ........ ........ ..##.... ........ ####.... ........ ........ ........ ........ ........ ........ ........ ........ ######## ########
.......# ..###... .....### ####.... ........ ........ ........ ........ ........ #####... ........ ........ ........ ........ ........ ........ ........ ........ ######## ########
........ ..##.... ........ ######## ##...... ........ .....##. ........ .......# #######. ........ ........ ........ ........ ........ ........ ........ ........ ######## ########
........ .##..... ........ ...##### ######.. ........ ....#### ........ ...##### .....#.. ........ ........ ........ ........ ........ .....### #####... ........ ######## ########
........ ##...... ........ ........ ..###### ######## .....##. ........ ######## ........ ........ ........ ........ ........ ........ ....#### ##..##.. ........ ######## ########
:COL=1,1 :COL=1,0 :COL=1,0 :COL=1,0 :COL=4,0 :COL=4,0 :COL=4,0 :COL=4,0 :COL=4,1 :COL=4,0 :COL=4,0 :COL=1,0 :COL=1,0 :COL=7,0 :COL=7,0 :COL=7,0 :COL=7,0 :COL=2,0 :COL=2,1 :COL=2,1 ; 07
........ ........ ........ ........ ......## ######## ######## ######## ###..... ........ ........ ........ ........ .....### #######. ...##### #.###.#. ######## ######## ########
........ ........ ........ ........ ........ ....#### ######## ######## #....... ........ ........ ........ ........ ...##### ....#### #..##### .######. ######## ######## ########
........ ........ ........ ........ ........ ........ ........ ......## #....... ........ ........ ........ ........ ...####. #######. ##.##### ...####. ######## ######## ########
........ ........ ........ ........ ........ ........ ........ .......# ##...... ........ ........ ........ ........ ...##### ...##### .#..###. ...####. ######## ######## ########
........ ........ ........ ........ ........ ........ ........ ........ ###..... ........ ........ ........ ........ ...##### .....### ####.##. ..#####. ######## ######## ########
........ ........ ........ ........ ........ ........ ........ ........ #######. ........ ........ ........ ........ ...##### #....### #.#####. .#####.. ######## ######## ########
........ ........ ........ ........ ........ ........ ........ ........ ######## #....#.. ...#.... ........ ........ ....#### #######. ######## ####.... ######## ######## ########
........ ........ ........ ........ ........ ........ ........ ......## ######## ######## #####... ........ ........ .......# #####..# ####.### ##...... ######## ######## ########
:COL=1,1 :COL=9,0 :COL=8,0 :COL=1,0 :COL=7,0 :COL=1,0 :COL=1,0 :COL=6,0 :COL=4,0 :COL=4,0 :COL=4,1 :COL=4,0 :COL=1,0 :COL=7,1 :COL=7,0 :COL=7,0 :COL=7,0 :COL=2,0 :COL=2,1 :COL=2,0 ; 08
........ ..##...o ........ ........ .......x ........ ........ ........ ......## ######## ###..... ........ ........ ........ ..###### .###..#. ####.... ......## ######## ########
........ .####... ...#.... ........ ..##.... ........ ........ ..####.. ........ ######## #....... ........ ........ .......# #######. ####.#.. .####... ......## ######## ########
........ ..##.... ...#.... ........ .####... ........ ........ .######. ........ ......## #....... ........ ........ .....### ###..... ####.#.. ..####.. ......## ######## ########
........ ........ ..###... ........ ..##.... ........ ........ ######## ........ .......# ##...... ........ ........ ....#### ........ ####.#.. ..####.. ......## ####...# ########
........ ........ #######. ........ ........ ........ ........ ######## ........ ........ ###..... ........ ........ ....###. ........ ####.#.. ...####. ......## ###..... #...####
........ .....##. ..#.#... ........ ........ ........ ........ #.###### ........ ........ #######. ........ ........ ....###. ........ ####.#.. ....###. ......## #....##. ..#..###
........ ....#### ...#.... ........ ........ ........ ........ .#..###. ........ ........ ######## #....#.. ........ ....#... ........ ####.#.. ....###. ......## ..##..#. .##....#
........ .....##. ...#.... ........ ........ ........ ........ ..####.. ........ ......## ######## ######## ........ ........ ........ ####.#.. ....##.. ......## ..###.#. #...##..
:COL=2,1 :COL=5,0 :COL=1,0 :COL=1,0 :COL=1,0 :COL=1,0 :COL=0,0 :COL=0,0 :COL=8,0 :COL=1,0 :COL=9,0 :COL=4,0 :COL=4,1 :COL=7,1 :COL=7,0 :COL=7,0 :COL=7,0 :COL=1,1 :COL=6,0 :COL=6,0 ; 09
.......x ........ ........ ........ ........ ........ ..##...o .......x ........ ........ .......x ######## ###..... ........ ........ ####.#.. ....#... ........ #....... ........
..##.... ..####.. ........ ........ ........ ........ .####... ..##.... ...#.... ........ ..##.... ...##### #....... ........ ........ ####.#.. ........ ........ .##.#... #.....#.
.####... .######. ........ ........ ........ ........ ..##.... .####... ...#.... ........ .####... .......# #....... ........ ........ ####.#.. ........ ........ ....###. ##..##..
..##.... ######## ........ ........ ........ ........ ........ ..##.... ..###... ........ ..##.... .......# ##...... ........ ........ #####... ........ ........ ....#### ........
........ ######## ........ ........ ........ ........ ........ ........ #######. ........ ........ ........ ###..... ######## ######## .####### ######## ........ ....#### ........
........ #.###### ........ ........ ........ ........ .....##. ........ ..#.#... ........ ........ ........ #######. ######## ######## ######## ######## ........ ....#### ........
........ .#..###. ........ ........ ........ ........ ....#### ........ ...#.... ........ ........ ........ ######## ######## ######## ######## ######## ........ ....#### ........
........ ..####.. ........ ........ ........ ........ .....##. ........ ...#.... ........ ........ .......# ######## ######## ######## ####.### ######## ........ ....###. ........
:COL=8,1 :COL=1,0 :COL=2,0 :COL=4,0 :COL=1,0 :COL=8,0 :COL=1,0 :COL=1,0 :COL=4,0 :COL=6,0 :COL=3,0 :COL=0,0 :COL=4,0 :COL=4,1 :COL=4,1 :COL=7,0 :COL=1,0 :COL=6,1 :COL=6,0 :COL=6,0 ; 0A
........ ........ .......x ......#. ........ .......o ........ ........ ........ .......x ..##...o ........ ......## #....... ........ ####.#.. ........ ######## ###.#### ########
...#.... ........ ..##.... ......#. ........ ..##.... ........ ........ ........ ..##.... .####... .....#.. .......# ##...... ........ ####.#.. ........ ######## ######## ########
...#.... ........ .####... ......## ........ .####... ........ ........ ........ .####... ..##.... ........ ........ ##...... ........ ####.#.. ........ ........ ....###. ........
..###... ........ ..##.... ......## ........ ..##.... ........ ........ ........ ..##.... ........ ...#.... ........ ####.... ..#..... ####.#.. ........ ######## ###.#### ########
#######. ........ ........ ......## ........ ........ ........ ........ ........ ........ ........ .......# ........ #######. ..##.... ####.#.. ........ ........ ....#### ........
..#.#... ........ ........ .....### ........ ........ ........ ........ ......#. ........ .....##. ........ .......# ######## ###..... ####.#.. ........ ........ ....#### ........
...#.... ........ ........ .....### ........ ........ ........ ........ ......## ........ ....#### ........ ...##### ######## ####.... ####.#.. ........ ........ ....#### ........
...#.... ........ ........ .....### ........ ........ ........ ........ .......# ........ .....##. ........ ######## ######## ####.... ####.#.. ........ ........ ....#### ........
:COL=1,1 :COL=1,0 :COL=0,0 :COL=4,0 :COL=4,0 :COL=4,0 :COL=4,0 :COL=4,0 :COL=5,0 :COL=4,0 :COL=4,0 :COL=4,0 :COL=4,0 :COL=4,0 :COL=4,1 :COL=7,1 :COL=1,0 :COL=1,1 :COL=6,0 :COL=6,0 ; 0B
........ ........ ........ ....##.# ##...... ........ ........ ........ ........ ##...... ........ ........ ........ ......## ###..... ####.#.. ........ ........ ....#### ........
........ ........ .....#.. ....##.. ###..... ........ ........ ........ ..####.. ###..... ........ ........ ........ ........ ######.. ####.#.. ........ ........ ....#### ........
........ ........ ........ ...###.. .####... ........ ........ ........ .######. .####... ........ ........ ........ ........ ##..#... ####.#.. ........ ........ ....#### ........
........ ........ ...#.... ...##... ...####. ........ ........ ........ ######## ...####. ........ ........ ........ .......# ##...... ####.#.. ........ ........ ....#### ........
........ ........ .......# ..###... .....### ####.... ........ ........ ######## .....### ####.... ........ ........ ......## #....... ####.#.. ........ ........ ....#### ........
........ ........ ........ ..##.... ........ ######## ##...... ........ #.###### ........ ######## ##...... ........ ...##### #....... ####.#.. ........ ........ ....#### ........
........ ........ ........ .##..... ........ ...##### ######.. ........ .#..###. ........ ...##### ######.. ........ ######## ........ ####.#.. ........ ........ ....#### ........
........ ........ ........ ##...... ........ ........ ..###### ######## ..####.. ........ ........ ..###### ######## ######## ........ ####.#.. ........ ........ ....#### ........
; 00     01       02       03       04       05       06       07       08       09       0A       0B       0C       0D       0E       0F       10       11       12       13
  • Like 2
Link to comment
Share on other sites

I vote for this. I personally prefer "." and "#" for my graphics definitions:

Looks good

        .byte zz...##...
        .byte zz...##...
        .byte zz...##...
        .byte zz...##...
        .byte zz..####..
        .byte zz...###..
        .byte zz..#.#...
        .byte zz.###.##.
        .byte zz.#.####.
        .byte zz.#....#.
        .byte zz.##..##.
        .byte zz.######.

It's a little easier to see which pixel is which with . than with _

        .byte zz___XX___
        .byte zz___XX___
        .byte zz___XX___
        .byte zz___XX___
        .byte zz__XXXX__
        .byte zz___XXX__
        .byte zz__X_X___
        .byte zz_XXX_XX_
        .byte zz_X_XXXX_
        .byte zz_X____X_
        .byte zz_XX__XX_
        .byte zz_XXXXXX_

It does look a little different in my editor though as the font I use doesn't merge the underscores.

post-3056-0-75578300-1391526963_thumb.png

 

When I next work on Frantic I'll have to see if using . and # will work in DASM as I don't know off the top of my head if . or # can be used in label names.

Edited by SpiceWare
  • Like 1
Link to comment
Share on other sites

Looks good

        .byte zz...##...
        .byte zz...##...
        .byte zz...##...
        .byte zz...##...
        .byte zz..####..
        .byte zz...###..
        .byte zz..#.#...
        .byte zz.###.##.
        .byte zz.#.####.
        .byte zz.#....#.
        .byte zz.##..##.
        .byte zz.######.

It's a little easier to see which pixel is which with . than with _

        .byte zz___XX___
        .byte zz___XX___
        .byte zz___XX___
        .byte zz___XX___
        .byte zz__XXXX__
        .byte zz___XXX__
        .byte zz__X_X___
        .byte zz_XXX_XX_
        .byte zz_X_XXXX_
        .byte zz_X____X_
        .byte zz_XX__XX_
        .byte zz_XXXXXX_

When I next work on Frantic I'll have to see if using . and # will work in DASM as I don't know off the top of my head if . or # can be used in label names.

 

The two schemes now work in BITMAP statement.

 

To resume it: characters '_', '.', '0', and space are taken as zero, every other as one.

 

It leaves a lot of space for personal preferences, you could use something like this:

BITMAP "  ****  "
BITMAP " ****** "
BITMAP "** ** **"
BITMAP "********"
BITMAP "********"
BITMAP "**    **"
BITMAP " **  ** "
BITMAP "  ****  "

  • Like 2
Link to comment
Share on other sites

post-24767-0-67142500-1391574288_thumb.gif

 

I've been working on a miniature game with IntyBASIC. I been trying out different basic command and see how they work. Also collusion works works well. I don't have to rely on software collusion. I should have more different stuff to drop so if you catch a spiny worm, you lose a life.

 

I tested ORG $D000 Statement and seems to work fine without problem. So I could possible make a 16KB game with IntyBASIC.

I should play with the scroll register see how they work.

  • Like 3
Link to comment
Share on other sites

I've been working on a miniature game with IntyBASIC. I been trying out different basic command and see how they work. Also collusion works works well. I don't have to rely on software collusion. I should have more different stuff to drop so if you catch a spiny worm, you lose a life.

I'm glad you're learning. It looks pretty cool! :)

 

I tested ORG $D000 Statement and seems to work fine without problem. So I could possible make a 16KB game with IntyBASIC.

Yep, I would suggest to put graphics in $D000 and $F000 for big games. Still I must add notes to manual.

 

I should play with the scroll register see how they work.

Excellent! myself I don't have tried yet the scroll registers, but you should be in the safe side if you update they just after WAIT.

Link to comment
Share on other sites

I'm also trying to make a simple game with IntvBASIC just to try it out.
I'M still "a few balloons short of a party" ("If you know what I mean...") but you can get an idea of where the game is going...


post-14916-0-56129500-1391627533.gif

It certainly takes a lot less typing than assembly language. But (so far) it's difficult to set up data tables the way I want to, and I end up with either very long "if" statements or lots of "gotos" ... But, I'm still learning how to use it...




Catsfolly

  • Like 8
Link to comment
Share on other sites

http://wiki.intellivision.us/index.php?title=Memory_Map

 

This shows what memory that a cartridge can assign. So I think over 16KB is available for cartridge. This should be more than enough.

 

http://wiki.intellivision.us/index.php?title=STIC#Registers

 

This have the addresses for the STIC register so you can POKE values into.

 

 

I have an updated AS1600 and cart.mac I should release soon that supports ECS-style bankswitching. With that, you should be able to go quite large. JLP boards go up to 118K 16-bit words or so. (They can go even further than that if you have a lot of data that fits in 12 bits or 8 bits.)

Link to comment
Share on other sites

I'm also trying to make a simple game with IntvBASIC just to try it out.

I'M still "a few balloons short of a party" ("If you know what I mean...") but you can get an idea of where the game is going...

 

 

attachicon.gifcb2.gif

 

It certainly takes a lot less typing than assembly language. But (so far) it's difficult to set up data tables the way I want to, and I end up with either very long "if" statements or lots of "gotos" ... But, I'm still learning how to use it...

 

 

 

Catsfolly

 

:o Amazing! :thumbsup: :) Well done!

 

 

You should be able to build a fat binary with both 32-bit and 64-bit in there. See the Makefile in jzIntv (Makefile.osx_framework, I believe) for the correct CFLAGS.

 

Yep, thanks! I forgot to say that I've built an universal binary with both 32-bit and 64-bit, but I thought it was easIer to say it works starting with Mac OS X 10.6

Link to comment
Share on other sites

I'm also trying to make a simple game with IntvBASIC just to try it out.

I'M still "a few balloons short of a party" ("If you know what I mean...") but you can get an idea of where the game is going...

 

 

attachicon.gifcb2.gif

 

It certainly takes a lot less typing than assembly language. But (so far) it's difficult to set up data tables the way I want to, and I end up with either very long "if" statements or lots of "gotos" ... But, I'm still learning how to use it...

 

 

 

Catsfolly

So.... When can we get a look at the code and/or .bin???

  • Like 1
Link to comment
Share on other sites

So.... When can we get a look at the code and/or .bin???

I'll post the basic source code once I get everything working.

 

At a minimum, I still need to:

 

1. Animate the balloons bursting.

2. Detect when all the balloons are gone and advance to the next round.

3. Put up different balloon patterns for each round.

4. Keep track of the number of clown lives.

5. Animate the clown hitting the ground.

6. Detect and display game over.

7. Add sound effects.

8. Put in more comments.

 

At the moment. There are about 150 lines of code, and 250 lines of graphics data and tables.

 

Here is the title screen part:

REM
	REM Clowns and Balloons game
	REM Created in IntyBASIC
	REM by Catsfolly
	REM Feb 2014.
	REM 
	cls
    REM the screen is 20 chars wide so position is 20 * row + col
        print at (20* 3 + 5),"Clowns and"
        print at (20* 4 + 6),"Balloons"
  	print at (20* 5 + ,"0.2"

	print at (20* 9 + 4) COLOR 1,"Created with"
	print at (20*10 + 4) COLOR 2,"IntyBasic 0.2"

title:
	IF (cont1.button + cont1.left + cont1.right + cont1.up + cont1.down)=0 THEN GOTO title
	cls
Edited by catsfolly
  • Like 1
Link to comment
Share on other sites

 

I'll post the basic source code once I get everything working.

 

At a minimum, I still need to:

 

1. Animate the balloons bursting.

2. Detect when all the balloons are gone and advance to the next round.

3. Put up different balloon patterns for each round.

4. Keep track of the number of clown lives.

5. Animate the clown hitting the ground.

6. Detect and display game over.

7. Add sound effects.

8. Put in more comments.

 

At the moment. There are about 150 lines of code, and 250 lines of graphics data and tables.

 

 

I remember you said you're using data tables, are these read-only?

 

I could manage to do a kind of indexed array-access to read-only DATA statements. My proposal would be like this:

FOR A=0 TO 4
PRINT AT TABLE(A),"Z"
NEXT A

TABLE:
DATA 21,42,63,84,105

Also I've the temptation to add a DIM statement to manage single-dimensional arrays in RAM (8/16 bits, although there is little space)

Link to comment
Share on other sites

 

I remember you said you're using data tables, are these read-only?

 

I could manage to do a kind of indexed array-access to read-only DATA statements. My proposal would be like this:

FOR A=0 TO 4
PRINT AT TABLE(A),"Z"
NEXT A

TABLE:
DATA 21,42,63,84,105

Also I've the temptation to add a DIM statement to manage single-dimensional arrays in RAM (8/16 bits, although there is little space)

Sounds like it would fit my needs.

Currently I am looking at something like this:

if round=1 THEN RESTORE round1_table
if round=2 THEN RESTORE round2_table
if round=3 THEN RESTORE round3_table
read b1pos
read b2pos
etc...



So a read only table where I can access any element would be useful.

 

The DIM would also be useful, for example if a game had several enemy characters that had the same behavior.

Instead of having separate code to set enemy1x, enemy2x, etc there could be one set of code that sets enemyx[index].

 

Thanks for making a very interesting tool!

 

Catsfolly

  • Like 1
Link to comment
Share on other sites

Sounds like it would fit my needs.

 

...

 

So a read only table where I can access any element would be useful.

 

The DIM would also be useful, for example if a game had several enemy characters that had the same behavior.

Instead of having separate code to set enemy1x, enemy2x, etc there could be one set of code that sets enemyx[index].

 

Thanks for making a very interesting tool!

 

Catsfolly

 

Ok! then consider it done for next version :D

 

Also your technique can work fine.

 

Thanks you for making a so nice game :)

  • Like 2
Link to comment
Share on other sites

I'm not sure what you're refering to space. I think we have 200 8-bit ram, aka scratch ram. Array would be an awesome addition to IntyBASIC. It perfect for slot system and help reorganize sprites data just in case the game need more than 8 mobile objects.

I'm still working on the Apple Catcher mini game. :thumbsup:

Edited by Kiwi
  • Like 3
Link to comment
Share on other sites

Sounds like it would fit my needs.

Currently I am looking at something like this:

if round=1 THEN RESTORE round1_table
if round=2 THEN RESTORE round2_table
if round=3 THEN RESTORE round3_table
read b1pos
read b2pos
etc...



So a read only table where I can access any element would be useful.

 

The DIM would also be useful, for example if a game had several enemy characters that had the same behavior.

Instead of having separate code to set enemy1x, enemy2x, etc there could be one set of code that sets enemyx[index].

 

Thanks for making a very interesting tool!

 

Catsfolly

 

What about doing it the typical BASIC way: all DATA entries go in the same table, and you use the READ command to get the read the next cell, keeping an internal cursor that can be reset with CLEAR.

 

-dZ.

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...