Compare commits

...

9 commits

50 changed files with 16 additions and 1015 deletions

8
.gitignore vendored
View file

@ -2,7 +2,11 @@
*.prg
*.o
*.lst
*.lst
*.note
./build/*
*.lbl
*.lbl
*.bin
*.labels
editor/c6le
editor/source-program_*.c6l
user-side-compiler/c6lc

View file

@ -1,684 +0,0 @@
// Labels exported by RetroDebugger v0.64.72 on 2025/07/19 18:02:39
{
Version: "1"
Segments: [
{
Name: Default
CodeLabels: [
{
Address: "1444"
Name: .__BSS_LOAD__
}
{
Address: "1444"
Name: .__BSS_RUN__
}
{
Address: "0000"
Name: .__BSS_SIZE__
}
{
Address: "0001"
Name: .__EXEHDR__
}
{
Address: "0001"
Name: .__LOADADDR__
}
{
Address: "0000"
Name: .__ZP_FILEOFFS__
}
{
Address: "0002"
Name: .__ZP_LAST__
}
{
Address: "00FE"
Name: .__ZP_SIZE__
}
{
Address: "0002"
Name: .__ZP_START__
}
{
Address: "1404"
Name: .big_y_offset
}
{
Address: "13CE"
Name: .binary_factor
}
{
Address: "13C3"
Name: .log
}
{
Address: "13BA"
Name: .inverse_factor_value
}
{
Address: "13B9"
Name: .for_i_end
}
{
Address: "13B1"
Name: .R_pos
}
{
Address: "13B5"
Name: .R_neg
}
{
Address: "13A4"
Name: .for_i
}
{
Address: "139A"
Name: .div
}
{
Address: "1399"
Name: .endloop
}
{
Address: "138C"
Name: .loop
}
{
Address: "138E"
Name: .start
}
{
Address: "1387"
Name: .mult
}
{
Address: "1377"
Name: .change_length
}
{
Address: "1380"
Name: .y_overflow
}
{
Address: "1370"
Name: .loop
}
{
Address: "136E"
Name: .memcpy
}
{
Address: "132F"
Name: .big_set_end
}
{
Address: "1337"
Name: .small_set
}
{
Address: "1030"
Name: .big_set
}
{
Address: "1029"
Name: .memset
}
{
Address: "0FFF"
Name: .move_data
}
{
Address: "0FD6"
Name: .calculate_screen_position
}
{
Address: "0FBC"
Name: .calculate_petski_position
}
{
Address: "0FBC"
Name: .char_draw
}
{
Address: "0FB3"
Name: .calc_byte_to_paint
}
{
Address: "0F95"
Name: .pixel_calc
}
{
Address: "0F90"
Name: .draw
}
{
Address: "0F88"
Name: .calc_byte_to_paint
}
{
Address: "0F6A"
Name: .pixel_draw
}
{
Address: "0F68"
Name: .draw_lower_triangle
}
{
Address: "0F5C"
Name: .draw_upper_triangle
}
{
Address: "0F45"
Name: .BC_overflow
}
{
Address: "0F5C"
Name: .BC_overflow_end
}
{
Address: "0F28"
Name: .AB_overflow
}
{
Address: "0F3C"
Name: .AB_overflow_end
}
{
Address: "0F1F"
Name: .triangle
}
{
Address: "0F1E"
Name: .end
}
{
Address: "0EF9"
Name: .qbb_y_overflow
}
{
Address: "0F15"
Name: .qbb_y_end
}
{
Address: "0EF3"
Name: .qbb_y
}
{
Address: "0ED9"
Name: .qdb_overflow
}
{
Address: "0EF3"
Name: .qdb_y_end
}
{
Address: "0ED5"
Name: .qdb_y
}
{
Address: "0EBB"
Name: .qca_x_overflow
}
{
Address: "0ED5"
Name: .qca_x_end
}
{
Address: "0EB7"
Name: .qca_x
}
{
Address: "0E9D"
Name: .qaa_x_overflow
}
{
Address: "0EB7"
Name: .qaa_x_end
}
{
Address: "0E99"
Name: .qaa_x
}
{
Address: "0E95"
Name: .change_x
}
{
Address: "0F15"
Name: .endif
}
{
Address: "0E95"
Name: .if
}
{
Address: "0E6C"
Name: .qcb_x_overflow
}
{
Address: "0E87"
Name: .qcb_x_end
}
{
Address: "0E68"
Name: .qcb_x
}
{
Address: "0E4E"
Name: .qdb_x_overflow
}
{
Address: "0E68"
Name: .qdb_x_end
}
{
Address: "0E4A"
Name: .qdb_x
}
{
Address: "0E2E"
Name: .qda_y_overflow
}
{
Address: "0E4A"
Name: .qda_y_end
}
{
Address: "0E28"
Name: .qda_y
}
{
Address: "0E0E"
Name: .qaa_y_underflow
}
{
Address: "0E28"
Name: .qaa_y_end
}
{
Address: "0E0A"
Name: .qaa_y
}
{
Address: "0E08"
Name: .change_Y
}
{
Address: "0E00"
Name: .draw_qab
}
{
Address: "0DF8"
Name: .draw_qbb
}
{
Address: "0DF2"
Name: .draw_qdb
}
{
Address: "0DEA"
Name: .draw_qcb
}
{
Address: "0DE4"
Name: .draw_qca
}
{
Address: "0DDC"
Name: .draw_qda
}
{
Address: "0DD6"
Name: .draw_qba
}
{
Address: "0DCE"
Name: .draw_qaa
}
{
Address: "0DCE"
Name: .draw_pixels
}
{
Address: "0DCE"
Name: .while_x_bigger_then_y
}
{
Address: "0DB4"
Name: .draw_right_px_in_circle
}
{
Address: "0D93"
Name: .draw_lower_px_in_circle
}
{
Address: "0D75"
Name: .draw_left_px_in_circle
}
{
Address: "0D57"
Name: .draw_upper_px_in_circle
}
{
Address: "0D4B"
Name: .circle
}
{
Address: "0D2A"
Name: .move_8px_left
}
{
Address: "0D26"
Name: .increment_pixel_x
}
{
Address: "0D1C"
Name: .LOCAL-MACRO_SYMBOL-002F
}
{
Address: "0D4A"
Name: .end
}
{
Address: "0CFD"
Name: .move_8px_up
}
{
Address: "0D0B"
Name: .decrement_y_pos_end
}
{
Address: "0CFA"
Name: .decrement_y_pos
}
{
Address: "0CF4"
Name: .for_y
}
{
Address: "0CDF"
Name: .end_selfmod
}
{
Address: "0D1C"
Name: .case_1
}
{
Address: "0D3B"
Name: .case_2
}
{
Address: "0CCB"
Name: .selfmod
}
{
Address: "0C90"
Name: .decrement_y_pos_end
}
{
Address: "0C7F"
Name: .move_8px_up
}
{
Address: "0C7C"
Name: .decrement_y_pos
}
{
Address: "0C72"
Name: .LOCAL-MACRO_SYMBOL-0021
}
{
Address: "0C9F"
Name: .end
}
{
Address: "0C53"
Name: .move_8px_left
}
{
Address: "0C61"
Name: .increment_pixel_x_end
}
{
Address: "0C4F"
Name: .increment_pixel_x
}
{
Address: "0C49"
Name: .for_x
}
{
Address: "0C35"
Name: .end_selfmod
}
{
Address: "0C72"
Name: .case_1
}
{
Address: "0C90"
Name: .case_2
}
{
Address: "0C21"
Name: .selfmod
}
{
Address: "0BD4"
Name: .move_8px_left
}
{
Address: "0BD0"
Name: .increment_pixel_x
}
{
Address: "0BC6"
Name: .LOCAL-MACRO_SYMBOL-0017
}
{
Address: "0BF5"
Name: .end
}
{
Address: "0BA7"
Name: .move_8px_down
}
{
Address: "0BB5"
Name: .increment_y_pos_end
}
{
Address: "0BA4"
Name: .increment_y_pos
}
{
Address: "0B9E"
Name: .for_y
}
{
Address: "0B7D"
Name: .end_selfmod
}
{
Address: "0BC6"
Name: .case_1
}
{
Address: "0BE6"
Name: .case_2
}
{
Address: "0B69"
Name: .selfmod
}
{
Address: "0B2E"
Name: .decrement_y_pos_end
}
{
Address: "0B1D"
Name: .move_8px_up
}
{
Address: "0B1A"
Name: .decrement_y_pos
}
{
Address: "0B10"
Name: .LOCAL-MACRO_SYMBOL-0009
}
{
Address: "0B3D"
Name: .end
}
{
Address: "0AF1"
Name: .move_8px_right
}
{
Address: "0AFF"
Name: .decrement_pixel_x_end
}
{
Address: "0AED"
Name: .decrement_pixel_x
}
{
Address: "0AE7"
Name: .for_x
}
{
Address: "0AC7"
Name: .end_selfmod
}
{
Address: "0B10"
Name: .case_1
}
{
Address: "0B2E"
Name: .case_2
}
{
Address: "0AB3"
Name: .selfmod
}
{
Address: "0A88"
Name: .line_down
}
{
Address: "0B3E"
Name: .line_down_inv
}
{
Address: "0A80"
Name: .steep_
}
{
Address: "0A84"
Name: .shallow_
}
{
Address: "0BF6"
Name: .line_up
}
{
Address: "0CA0"
Name: .line_up_inv
}
{
Address: "0A6E"
Name: .steep
}
{
Address: "0A72"
Name: .shallow
}
{
Address: "0A68"
Name: .up
}
{
Address: "0A78"
Name: .down
}
{
Address: "0A5F"
Name: .dx_no_underflow
}
{
Address: "0A54"
Name: .line
}
{
Address: "0A51"
Name: .exit
}
{
Address: "0A21"
Name: .end_test_y
}
{
Address: "0A15"
Name: .test_y
}
{
Address: "0A0B"
Name: .end_test_x
}
{
Address: "09FF"
Name: .test_x
}
{
Address: "09D0"
Name: .@loop
}
{
Address: "09BE"
Name: .long_line_test_b
}
{
Address: "09A9"
Name: .clear_screen_
}
{
Address: "0992"
Name: .@loop
}
{
Address: "0980"
Name: .long_line_test_a
}
{
Address: "096B"
Name: .clear_screen
}
{
Address: "0954"
Name: .@loop
}
{
Address: "08FE"
Name: .loop
}
{
Address: "08C5"
Name: .loop
}
{
Address: "0897"
Name: .NMI_routine_end
}
{
Address: "0896"
Name: .NMI_routine
}
]
}
]
}

View file

@ -1,159 +0,0 @@
al 001315 .__BSS_LOAD__
al 001315 .__BSS_RUN__
al 000000 .__BSS_SIZE__
al 000001 .__EXEHDR__
al 000001 .__LOADADDR__
al 000000 .__ZP_FILEOFFS__
al 000002 .__ZP_LAST__
al 0000FE .__ZP_SIZE__
al 000002 .__ZP_START__
al 0012D5 .big_y_offset
al 00129F .binary_factor
al 001294 .log
al 00128B .inverse_factor_value
al 00128A .for_i_end
al 001282 .R_pos
al 001286 .R_neg
al 001275 .for_i
al 00126B .div
al 00126A .endloop
al 00125D .loop
al 00125F .start
al 001258 .mult
al 001248 .change_length
al 001251 .y_overflow
al 001241 .loop
al 00123F .memcpy
al 001200 .big_set_end
al 001208 .small_set
al 000F01 .big_set
al 000EFA .memset
al 000ED0 .move_data
al 000EA7 .calculate_screen_position
al 000E8D .calculate_petski_position
al 000E8D .char_draw
al 000E84 .calc_byte_to_paint
al 000E66 .pixel_calc
al 000E61 .draw
al 000E59 .calc_byte_to_paint
al 000E3B .pixel_draw
al 000E39 .draw_lower_triangle
al 000E2D .draw_upper_triangle
al 000E16 .BC_overflow
al 000E2D .BC_overflow_end
al 000DF9 .AB_overflow
al 000E0D .AB_overflow_end
al 000DF0 .triangle
al 000DEF .end
al 000DCA .qbb_y_overflow
al 000DE6 .qbb_y_end
al 000DC4 .qbb_y
al 000DAA .qdb_overflow
al 000DC4 .qdb_y_end
al 000DA6 .qdb_y
al 000D8C .qca_x_overflow
al 000DA6 .qca_x_end
al 000D88 .qca_x
al 000D6E .qaa_x_overflow
al 000D88 .qaa_x_end
al 000D6A .qaa_x
al 000D66 .change_x
al 000DE6 .endif
al 000D66 .if
al 000D3D .qcb_x_overflow
al 000D58 .qcb_x_end
al 000D39 .qcb_x
al 000D1F .qdb_x_overflow
al 000D39 .qdb_x_end
al 000D1B .qdb_x
al 000CFF .qda_y_overflow
al 000D1B .qda_y_end
al 000CF9 .qda_y
al 000CDF .qaa_y_underflow
al 000CF9 .qaa_y_end
al 000CDB .qaa_y
al 000CD9 .change_Y
al 000CD1 .draw_qab
al 000CC9 .draw_qbb
al 000CC3 .draw_qdb
al 000CBB .draw_qcb
al 000CB5 .draw_qca
al 000CAD .draw_qda
al 000CA7 .draw_qba
al 000C9F .draw_qaa
al 000C9F .draw_pixels
al 000C9F .while_x_bigger_then_y
al 000C85 .draw_right_px_in_circle
al 000C64 .draw_lower_px_in_circle
al 000C46 .draw_left_px_in_circle
al 000C28 .draw_upper_px_in_circle
al 000C1C .circle
al 000BF9 .move_8px_left
al 000BF5 .increment_pixel_x
al 000C1B .end
al 000BD4 .move_8px_up
al 000BE2 .decrement_y_pos_end
al 000BD1 .decrement_y_pos
al 000BCB .for_y
al 000BB6 .end_selfmod
al 000BE9 .case_1
al 000C0B .case_2
al 000BA2 .selfmod
al 000B64 .decrement_y_pos_end
al 000B52 .move_8px_up
al 000B4F .decrement_y_pos
al 000B73 .end
al 000B2E .move_8px_left
al 000B3C .increment_pixel_x_end
al 000B2A .increment_pixel_x
al 000B24 .for_x
al 000B10 .end_selfmod
al 000B43 .case_1
al 000B64 .case_2
al 000AFC .selfmod
al 000AB7 .move_8px_left
al 000AB3 .increment_pixel_x
al 000AD8 .end
al 000A92 .move_8px_down
al 000AA0 .increment_y_pos_end
al 000A8F .increment_y_pos
al 000A89 .for_y
al 000A68 .end_selfmod
al 000AA7 .case_1
al 000AC8 .case_2
al 000A54 .selfmod
al 000A16 .decrement_y_pos_end
al 000A04 .move_8px_up
al 000A01 .decrement_y_pos
al 000A25 .end
al 0009E0 .move_8px_right
al 0009EE .decrement_pixel_x_end
al 0009DC .decrement_pixel_x
al 0009D6 .for_x
al 0009B6 .end_selfmod
al 0009F5 .case_1
al 000A16 .case_2
al 0009A2 .selfmod
al 000974 .line_down
al 000A26 .line_down_inv
al 00096C .steep_
al 000970 .shallow_
al 000AD9 .line_up
al 000B74 .line_up_inv
al 00095A .steep
al 00095E .shallow
al 000954 .up
al 000964 .down
al 00094B .dx_no_underflow
al 000940 .line
al 00093D .exit
al 000928 .@loop
al 000916 .long_line_test_b
al 000901 .clear_screen_
al 0008EA .@loop
al 0008D8 .long_line_test_a
al 0008C3 .clear_screen
al 0008C0 .hihi
al 0008A9 .@loop
al 000897 .NMI_routine_end
al 000896 .NMI_routine

View file

@ -1,168 +0,0 @@
al 001444 .__BSS_LOAD__
al 001444 .__BSS_RUN__
al 000000 .__BSS_SIZE__
al 000001 .__EXEHDR__
al 000001 .__LOADADDR__
al 000000 .__ZP_FILEOFFS__
al 000002 .__ZP_LAST__
al 0000FE .__ZP_SIZE__
al 000002 .__ZP_START__
al 001404 .big_y_offset
al 0013CE .binary_factor
al 0013C3 .log
al 0013BA .inverse_factor_value
al 0013B9 .for_i_end
al 0013B1 .R_pos
al 0013B5 .R_neg
al 0013A4 .for_i
al 00139A .div
al 001399 .endloop
al 00138C .loop
al 00138E .start
al 001387 .mult
al 001377 .change_length
al 001380 .y_overflow
al 001370 .loop
al 00136E .memcpy
al 00132F .big_set_end
al 001337 .small_set
al 001030 .big_set
al 001029 .memset
al 000FFF .move_data
al 000FD6 .calculate_screen_position
al 000FBC .calculate_petski_position
al 000FBC .char_draw
al 000FB3 .calc_byte_to_paint
al 000F95 .pixel_calc
al 000F90 .draw
al 000F88 .calc_byte_to_paint
al 000F6A .pixel_draw
al 000F68 .draw_lower_triangle
al 000F5C .draw_upper_triangle
al 000F45 .BC_overflow
al 000F5C .BC_overflow_end
al 000F28 .AB_overflow
al 000F3C .AB_overflow_end
al 000F1F .triangle
al 000F1E .end
al 000EF9 .qbb_y_overflow
al 000F15 .qbb_y_end
al 000EF3 .qbb_y
al 000ED9 .qdb_overflow
al 000EF3 .qdb_y_end
al 000ED5 .qdb_y
al 000EBB .qca_x_overflow
al 000ED5 .qca_x_end
al 000EB7 .qca_x
al 000E9D .qaa_x_overflow
al 000EB7 .qaa_x_end
al 000E99 .qaa_x
al 000E95 .change_x
al 000F15 .endif
al 000E95 .if
al 000E6C .qcb_x_overflow
al 000E87 .qcb_x_end
al 000E68 .qcb_x
al 000E4E .qdb_x_overflow
al 000E68 .qdb_x_end
al 000E4A .qdb_x
al 000E2E .qda_y_overflow
al 000E4A .qda_y_end
al 000E28 .qda_y
al 000E0E .qaa_y_underflow
al 000E28 .qaa_y_end
al 000E0A .qaa_y
al 000E08 .change_Y
al 000E00 .draw_qab
al 000DF8 .draw_qbb
al 000DF2 .draw_qdb
al 000DEA .draw_qcb
al 000DE4 .draw_qca
al 000DDC .draw_qda
al 000DD6 .draw_qba
al 000DCE .draw_qaa
al 000DCE .draw_pixels
al 000DCE .while_x_bigger_then_y
al 000DB4 .draw_right_px_in_circle
al 000D93 .draw_lower_px_in_circle
al 000D75 .draw_left_px_in_circle
al 000D57 .draw_upper_px_in_circle
al 000D4B .circle
al 000D2A .move_8px_left
al 000D26 .increment_pixel_x
al 000D1C .LOCALmMACRO_SYMBOLm002F
al 000D4A .end
al 000CFD .move_8px_up
al 000D0B .decrement_y_pos_end
al 000CFA .decrement_y_pos
al 000CF4 .for_y
al 000CDF .end_selfmod
al 000D1C .case_1
al 000D3B .case_2
al 000CCB .selfmod
al 000C90 .decrement_y_pos_end
al 000C7F .move_8px_up
al 000C7C .decrement_y_pos
al 000C72 .LOCALmMACRO_SYMBOLm0021
al 000C9F .end
al 000C53 .move_8px_left
al 000C61 .increment_pixel_x_end
al 000C4F .increment_pixel_x
al 000C49 .for_x
al 000C35 .end_selfmod
al 000C72 .case_1
al 000C90 .case_2
al 000C21 .selfmod
al 000BD4 .move_8px_left
al 000BD0 .increment_pixel_x
al 000BC6 .LOCALmMACRO_SYMBOLm0017
al 000BF5 .end
al 000BA7 .move_8px_down
al 000BB5 .increment_y_pos_end
al 000BA4 .increment_y_pos
al 000B9E .for_y
al 000B7D .end_selfmod
al 000BC6 .case_1
al 000BE6 .case_2
al 000B69 .selfmod
al 000B2E .decrement_y_pos_end
al 000B1D .move_8px_up
al 000B1A .decrement_y_pos
al 000B10 .LOCALmMACRO_SYMBOLm0009
al 000B3D .end
al 000AF1 .move_8px_right
al 000AFF .decrement_pixel_x_end
al 000AED .decrement_pixel_x
al 000AE7 .for_x
al 000AC7 .end_selfmod
al 000B10 .case_1
al 000B2E .case_2
al 000AB3 .selfmod
al 000A88 .line_down
al 000B3E .line_down_inv
al 000A80 .steep_
al 000A84 .shallow_
al 000BF6 .line_up
al 000CA0 .line_up_inv
al 000A6E .steep
al 000A72 .shallow
al 000A68 .up
al 000A78 .down
al 000A5F .dx_no_underflow
al 000A54 .line
al 000A51 .exit
al 000A21 .end_test_y
al 000A15 .test_y
al 000A0B .end_test_x
al 0009FF .test_x
al 0009D0 .@loop
al 0009BE .long_line_test_b
al 0009A9 .clear_screen_
al 000992 .@loop
al 000980 .long_line_test_a
al 00096B .clear_screen
al 000954 .@loop
al 0008FE .loop
al 0008C5 .loop
al 000897 .NMI_routine_end
al 000896 .NMI_routine

2
host/src/END.s Normal file
View file

@ -0,0 +1,2 @@
;;; -*- Mode: asm; indent-tabs-mode: t; tab-width: 8 -*-
END_OF_PROGRAM:

View file

@ -13,7 +13,9 @@
;.include "dubbel_buffer/raster_irqs.s"
.include "mainloop.s"
.ifndef EMULATOR_PREVIEW
.include "loader.s"
.endif
;.include "routines/arithmatic/mult_test.s"
;.include "routines/arithmatic/div_test.s"
@ -42,7 +44,11 @@ JMP exit
.include "routines/arithmatic/mult.s"
.include "routines/arithmatic/div.s"
;batch_userprog:
;.incbin "userprog.bin", 0, 1024
.include "lookup_tables.s"
.ifdef EMULATOR_PREVIEW
batch_userprog:
.incbin "../userprog.bin"
.endif
.include "END.s"