Join us on Discord!
You can help CodeWalrus stay online by donating here.
Menu

Show posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.

Show posts Menu

Messages - mazhat

#16
I was never on Omnimaga, no. I am not part of The Old Guard :'(
I'm glad that you're still working on the game however!
Superstar Hero somehow feels very nostalgic to me.
#17
Necro-posting, I know.
I think you guys will like this, however.

It's Raiders, but ported to PC!
The maps are bigger, and development is sooooo much easier.
It's super inspired by Gateway to Legend and LOZ, (but you knew that because you have are my biggest fan ;)

I've learned OOP a while back so the code is pretty readable, and the game itself is data-oriented.
[spoiler]

[/spoiler]
#18
"Top ten Video Games that have been in development hell"
"Top ten unreleased animes"

[Also shout-out to Netham45, Happy Birthday old boye]
#19
PC, Mac & Vintage Computers / Re: Gateway to Legend [pc]
September 18, 2018, 02:54:51 AM
Ah, I was on an older version of GtL. Everything is fixed now!
I also forgot that this is a zelda-like game. So I should embrace the openness, ha ha.
#20
PC, Mac & Vintage Computers / Re: Gateway to Legend [pc]
September 17, 2018, 01:19:53 PM
I think it's really good, but sometimes I don't know where to go.
Sometimes I get warped to the unpartitioned memory zone.
#21
Drawing & Animation / Re: Mazhat's Art
July 31, 2018, 03:52:54 PM
Thank you, Juju!
Cute is my hook.
#22
Drawing & Animation / Re: Mazhat's Art
July 30, 2018, 08:28:36 PM
The one-eyed goat beast. Supreme ruler of Earth. The cutest Stargod.
She bought Earth off the intergalactic market for 3 peanuts and an old sock.
Instead of using the planet as a resource for the Stargods' weird alien-ish goals,
she uses it as a giant boxing ring by making the nations of Earth at constant war with each other.

The Cult of Sirus worships the Stargods and by extension the lady goat.

-----------------
I'm having making lore for MOS in my head.
#23
Drawing & Animation / Re: Mazhat's Art
July 24, 2018, 12:53:30 AM
Thank you.
I love my doggo bois.
#24
I don't know too much about the software, and I don't have a Mac.
However, I will say that it should take only a minute or so to find the device.
Does plugging a Flash Drive, or other device into the USB adaptor work?

****************************

I have a TI-83+ and a TI-84+.
Remember to turn on your device and be on the main screen with the blinking cursor.
Sometimes the TI-CON software mucks up, and the solution I found is to just restart the program.
#25
Drawing & Animation / Re: My very own art thread
July 23, 2018, 01:52:24 AM
Hey man, it's no problem. I feel the same way a lot!
Usually I make an acknowledgement with a thumby uppy,
or if it's Discord or whatever I add a strange unrelated emoji.
I'm really glad that you dig my stuff! : D

--------------------------------

I'm sorry in advance for all the animal people I've been drawing lately.
#26
Drawing & Animation / Re: My very own art thread
July 15, 2018, 06:02:04 PM
New art dump from the past few months.
#27
Drawing & Animation / Re: My very own art thread
July 14, 2018, 06:10:00 PM
I knew I forgot to mention something!
I'm sorry about the stone monster, but once I took a closer look at the raw sprites I re-interpreted and that was the result, lol.
Next time I'll change it up ;)

I will always be waiting for the next update!

Quote
I have some very good ideas in store :)
I really hope so :D
#28
Drawing & Animation / Re: My very own art thread
July 14, 2018, 03:21:28 AM
It's been a while!
Some quick fanart of Gateway To Legend.
(Perhaps I will finish it?).
I can't wait for the next version of GTL, so excited :)
#29
You are crazy dude, this is awesome.
I haven't been here to see the whole thread,
but is this all from scratch?
What libraries did you use?
This fascinates me to no end.
#30
I am glad you are pursuing Assembly!
I finished only one program, but I just don't know about
all the hacks, and tricks of the hardware to be even close to decent.
It's a real challenge for smarty pants, such as yourself.

I looked through my old files and found it,
also I know that the beginning isn't optimised,
but I didn't really feel like doing it lol.


;Low Quality Bootleg Sprite Routine
;Created By Matt C./ Mazhat
;
.NOLIST
#define   EQU   .equ
#define   equ   .equ
#define   END   .end
#define   end   .end
#include "ti83plus.inc"
#include "mirage.inc"
.LIST
     .org $9d93 ;Origin (set back two to account for AsmPrgm)
.db $BB,$6D ;Compiled AsmPrgm token
ret ;So TIOS wont run the program
.db 1 ;Identifier as MirageOS program
.db %00000000,%00000000 ;15x15 button
.db %00000000,%00000000
.db %00000000,%00000000
.db %00000000,%00000000
.db %00000000,%00000000
.db %00000000,%00000000
.db %00000000,%00000000
.db %00000000,%00000000
.db %00000000,%00000000
.db %00000000,%00000000
.db %00000000,%00000000
.db %00000000,%00000000
.db %00000000,%00000000
.db %00000000,%00000000
.db %00000000,%00000000
.db "Made by Matt C",0 ;Zero terminated description

;Program code starts here

;Reset the variables and such
ld a, 0
ld (posY), a ;Set posY
ld a, 0
ld (posX), a ;Set posX
ld a, $00
ld (animCounter), a

animation:
;
;Yes, I know this part is REALLY bad,
;BUT BOY AM I DONE WITH THIS PROGRAM.
call drawSprite
ld a, 0
ld (posX), a
call drawSprite
ld a, 1
ld (posX), a
call drawSprite
ld a, 2
ld (posX), a
call drawSprite
ld a, 3
ld (posX), a
call drawSprite
ld a, 4
ld (posX), a
call drawSprite
ld a, 5
ld (posX), a
call drawSprite
ld a, 6
ld (posX), a
call drawSprite
ld a, 7
ld (posX), a
call drawSprite

ld a, 0
ld (posY), a
call drawSprite
ld a, 1
ld (posY), a
call drawSprite
ld a, 2
ld (posY), a
call drawSprite
ld a, 3
ld (posY), a
call drawSprite
ld a, 4
ld (posY), a
call drawSprite
ld a, 5
ld (posY), a
call drawSprite
ld a, 6
ld (posY), a
call drawSprite
ld a, 7
ld (posY), a
call drawSprite


call drawSprite
ld a, 7
ld (posX), a
call drawSprite
ld a, 6
ld (posX), a
call drawSprite
ld a, 5
ld (posX), a
call drawSprite
ld a, 4
ld (posX), a
call drawSprite
ld a, 3
ld (posX), a
call drawSprite
ld a, 2
ld (posX), a
call drawSprite
ld a, 1
ld (posX), a
call drawSprite
ld a, 0
ld (posX), a
call drawSprite

ld a, 7
ld (posY), a
call drawSprite
ld a, 6
ld (posY), a
call drawSprite
ld a, 5
ld (posY), a
call drawSprite
ld a, 4
ld (posY), a
call drawSprite
ld a, 3
ld (posY), a
call drawSprite
ld a, 2
ld (posY), a
call drawSprite
ld a, 1
ld (posY), a
call drawSprite
ld a, 0
ld (posY), a
call drawSprite

ld a, (animCounter) ;Put counter into a
inc a ;increase a
ld (animCounter), a ;therefore increase counter
cp 5 ;animate five times
jp nz, animation

ld hl, textHello
b_call(_HomeUp) ;(CurCol) = 0, (CurRow) = 0.
b_call(_putS) ;Display String in HL

ret
animCounter:
.db $00
textHello:
.db "MADE IN ASM",0
DrawSprite:
ld ix, sprite ;Put sprite address into ix
;ld hl, plotsscreen ;First part of buffer
ld hl, 0 ;empty out the hl register
ld de, (posY) ;Get the Y position

;Check for Vertical Clipping (UP)
ld a, (posY)
ld c, $08 ;Else set the counter to 8
or a ;cp 0
jp m, clipUp ;If y-pos is negative

add hl, de ;mutliply Y by 12
add hl, de
add hl, de
add hl, hl
add hl, hl
ld bc, plotsscreen
add hl, bc
;Check for Vertical Clipping (down)
ld a, (posY) ;Get the Y Position
cp 56
jp p, clipDown ;If the sprite goes off screen
ld c, $08 ;Else set the counter to 8

;Finding the byte on the buffer where the sprite is
ld a, (posX) ;X-Position
ld de, 0 ;Empty de
bufByte:
cp 8 ;Check if less than 8
jp m, addOffsetX ;If Negative Return value (Return back)
sub 8 ;Take away 8 from 'a' register
inc de ;X Offset increase
jp bufByte ;Else repeat
addOffsetX:
add hl, de ;Add the x-offset to hl
shiftRight: ;We are bitshifting the sprite according to x, really
ld a, (posX) ;First lets see if it goes over the right side of the screen
or a ;Check if it goes over the screen
jp m, spriteLoop ;Skip if it does (If negative)

ld b, (ix) ;put sprite into b
ld a, (posX) ;put x-pos into a

ld de, 0 ;x-offset: set to zero
jp mod ;Get how many bitshifts we need (put into 'a' register)
;(For Previous Line: If it doesn't straddle on two bytes, skips to spriteLoop)
sr1:
;ld (LSD), a ;Get the amount we bitshifted by and put it into c for later use by shiftLeft
srl b ;Bitshift sprite right
dec a ;Decrease counter
or a ;cp 0
jp nz, sr1 ;If we're not done the shifting
ld (hl), b ;load sprite image into screen when finished shifting
shiftLeft: ;The byte we need to shift left (The second byte)
ld a, (posX) ;First lets see if it goes over the right side of the screen
cp 88 ;Check if it goes over the screen
jp p, spriteLoop ;Skip if it does


ld b, (ix) ;Put the sprite into b
inc hl ;X-Offset byte on buffer + 1
ld a, 8 ;Let's get the bytes we need to shift left using the number we used to shift right
sub e ;Get the left shift value (It will be negative)
;ld e, (LSD)
;sub e ;8-(# that we shifted right by) = How many left shifts we need for this byte
sl1:
sla b ;Bitshift sprite left
dec a ;Dec counter
or a ;cp 0
jp nz, sl1
ld (hl), b ;load sprite image into screen
dec hl
jp spriteLoop
drawToBuffer:
ld (hl), b ;load sprite image into screen
spriteLoop:
;ld (hl), b ;load sprite image into screen

dec c ;dec counter
ld a, c ;load counter into a

inc ix ;next sprite byte
ld de, 12
add hl, de ;next 'y' position on screen

cp $01 ;loop x8
jp p, shiftRight ;Drain the grain in the counter
b_call(_grBufCpy)
b_call(_grBufClr)
ret
clipDown:
sub 64 ;Take away 64 from Y-POS (register a)
NEG ;NEGATE IT
ld c, a ;Put that number into the counter for drawing sprites
jp shiftRight
clipUp:
ld de, plotsscreen ;Get the plotSScreen
add hl, de ;Put plotSScreen into hl
NEG ;Negate 'a' to get a positive value
CLUP:
dec a ;Counter: The amount of bytes that need to be skipped

dec c ;Remainer bytes to draw
inc ix ;Skip the byte

or a
jp nz, CLUP ;Keep skipping until we have the bytes we need to draw

jp shiftRight
mod:
ld e, a ;Get the amount we bitshifted by and put it into ** for later use by shiftLeft
cp 8 ;Check if The number is already a mutliple of eight (no need for bitshift)
jp z, drawToBuffer ;If zero just draw it without bit shifting anything
or a ;Due to technicality, 0 is not a multiple of 8
jp z, drawToBuffer ;So just do the same thing
cp 8
jp m, sr1 ;If Negative Return value (Return back)
sub 8 ;Take away 8 from 'a' register
jp mod ;Else repeat
;LSD:;leftShiftData:
.db $00
sprite:
.db %01111110
.db %10000001
.db %10100101
.db %10000001
.db %10100101
.db %10011001
.db %10000001
.db %01111110
posX:
.db 0
posY:
.db 0

end
Powered by EzPortal