|
Post by mrichards0 on Mar 28, 2021 22:39:29 GMT
What workflow do you use to get a sprite from PETSCII editor, spritemate, or your favorite sprite editor to a d64 (for example, vice c1541) and into turbo macro pro? These tools create the code as text, but that can't be saved and imported to TMP because a text file is not a TMP file (I tried as a SEQ and a PRG and it failed with horrible results).
; 1 sprites generated with spritemate on 3/28/2021, 5:33:08 PM ; Byte 64 of each sprite contains multicolor (high nibble) & color (low nibble) information
LDA #$08 ; sprite multicolor 1 STA $D025 LDA #$06 ; sprite multicolor 2 STA $D026
; sprite 0 / singlecolor / color: $03 sprite_0 .byte $01,$fc,$00,$03,$06,$00,$02,$53 .byte $00,$03,$03,$00,$01,$82,$00,$00 .byte $e6,$00,$00,$38,$00,$00,$10,$00 .byte $00,$10,$40,$04,$10,$c0,$07,$ff .byte $80,$00,$10,$00,$00,$10,$00,$00 .byte $10,$00,$00,$38,$00,$00,$64,$00 .byte $00,$c6,$00,$01,$82,$00,$01,$03 .byte $00,$03,$01,$80,$02,$00,$c0,$03 I want to get the above code from an Ubuntu text file into TMP on THEC64. Or, if there's a better way to make sprites, I'm open to suggestions.
|
|
|
Post by namrok on Mar 29, 2021 17:02:32 GMT
I'm coming up on this as well, having been learning 6502 assembly and Turbo Macro Pro. Although I'm home brewing my tools just to better learn the ins and outs of the C64's memory maps, banking, io, etc.
Still, I've pulled code off before. Saved out my TMP source as a seq file, and exported it as a txt file using DirMaster on a Windows box.
I'm curious what happened to you when you tried using a SEQ file? Because that's what I would try first. In fact, let me try it now.
Ok, just did it. In Vice granted. But still, I save off your sprite code as a txt file. I imported it onto a d64 disk image using DirMaster. Made sure it was a seq file. I opened up the disk in Vice, loaded TMP, used backarrow e to enter a seq at the cursor location. I typed in "sprite" which was the name of the file, and it loaded into TMP with no issue.
I think your first instinct was correct, but you executed it poorly.
Edit: Although I do notice your lines may be too long. I see TMP, when it adjusts the tabs, cuts off the last 6 characters or so on your byte lines. Maybe shorten those up? But 6 bytes on each line.
|
|
|
Post by mrichards0 on Mar 30, 2021 2:06:10 GMT
Dirmaster was the key! Thank you! I had to run Wine on linux to run dirmaster, but it worked like a champ. I was able to load the SEQ file into my source (I had to shorten the lines, as you suggested).
|
|
|
Post by namrok on Mar 30, 2021 14:11:52 GMT
Good to know!
I'm currently debating how to work the output of my character set editor into a TMP project. Probably save it out to disk, and then have the TMP project actually load it into memory from disk at runtime. A 2kb charset is a bit much to include directly in a TMP program as byte statements. And I haven't gotten the .include or .binary statements to work. I'm under the impression these are purely for the cross platform version and/or bugged?
|
|
|
Post by Unbeliever on Apr 6, 2021 23:34:13 GMT
I'm not saying that this is the smartest way to put sprite data into Turbo Macro Pro, and it certainly doesn't result in the smallest source files, but for my first game, "Pac Invaders", I didn't use a sprite editor. I just drew the monocolor sprites right there in TMP.
For example, closed-mouth Pac Man facing left:
;bits 76543210 76543210 76543210 .byte %00000000,%00111110,%00000000;1 .byte %00000000,%11111111,%10000000;2 .byte %00000011,%11111111,%11100000;3 .byte %00000111,%11111100,%11110000;4 .byte %00001111,%11111000,%01111000;5 .byte %00001111,%11111100,%11111000;6 .byte %00011111,%11111111,%11111100;7 .byte %00011111,%11111111,%11111100;8 .byte %00111111,%11111111,%11111110;9 .byte %00111111,%11111111,%11111110;0 .byte %00000000,%00001111,%11111110;- .byte %00111111,%11111111,%11111110;0 .byte %00111111,%11111111,%11111110;9 .byte %00011111,%11111111,%11111100;8 .byte %00011111,%11111111,%11111100;7 .byte %00001111,%11111111,%11111000;6 .byte %00001111,%11111111,%11111000;5 .byte %00000111,%11111111,%11110000;4 .byte %00000011,%11111111,%11100000;3 .byte %00000000,%11111111,%10000000;2 .byte %00000000,%00111110,%00000000;1 .byte 0
The comments at the top and right edges were just for lining things up.
|
|