Harrierfalcon’s z80 Programmer
My games, code snippets, etc.

Jan
31

The contest deadline has been bumped to January 31st. This is because of many people needing another day, me included :) .

Making progress with my Pegz levels. They seem challenging enough… it seems to me the most seemingly-simple levels make the most challenging ones ;)

Jan
25

Yes, in one line you can convert any size decimal to binary.

seq(int(2fPart(N/2^Z)),Z,B,1,-1t

N is the number to be converted, while B is the number of bits.

Jan
22

Yes, that’s right. January 31st is the deadline for my contest, and thus, Pegz. I have ported all the Flash levels, the engine is done, the level editor is perfect, so all that’s left is to include my own levels! Be prepared for 15 levels of uber-easy Pegz on January 31st! (I suck at solving puzzles, and thus, suck at making them too.)

On another note, I plan on making my own Text-Sprite Game Maker after the contest. I have most of the parts planned out, but I’ve been working on Pegz, so I haven’t had time to implement anything yet.  I also might make a Mini-Golf game.

Jan
19

OK, I just recently figured out how to use GIMP properly, and as such have made my own Avy and Userbar!  They look sweet…what do you think?
Avy:

UserBar:

Jan
19

Yes, that’s right. I’m porting the famous PuzzPack Pegs to Basic! Already I have created a level editor, which will allow the user to make his/her own custom levels. I have accomplished the engine before (so I know it is feasible), but I am rewriting it from scratch. To make your life easier, if you have never finished the Flash Pegs levels, I have pre-made those and will include them in the release :) .

The game itself is based on Donut Quest by DarkerLine, but the level editor has nowhere near the power DarkerLine packed into his.

This is my entry for my Basic contest, so the release will be on the deadline of the contest (Jan. 30th, 2007).

A screenie, of a level in Flash Pegs.

Jan
15

Most of the time I lose something, I get mad, or I find it. This time, I’m not either. I lost the little rubber grip thing (lower left, if you position it so you can read “Texas Instruments”) on my 84+SE. Normally I would feel devastated sad at the loss of something on my calc (it costs a lot!), but I don’t mind now. I don’t know why. It doesn’t make it look bad, it’s just weird.

Jan
13

I, in cooperation with IAmACalculator, am organizing a little Basic contest.

The rules are cited here:

http://www.unitedti.org/index.php?act=ST&f=4&t=6229&st=0

Jan
13

Here’s a small program that will find all whole factors of a number. The bigger the number, the longer it takes, though…

:ClrHome
:Repeat Z and Z≤999 not(fPart(Z
:Input "Number? ",Z
:End
:ClrHome
:Output(8,1,"Calculating...
:D elVar L1Z→dim(L1
:D elVar L2Ans→dim(L2
:For(θ,1,Z
:Z/θ
:If not(fPart(Ans
:Then
:Ans→L1
:θ→L2
:End
:End
:If not(max(L1
:Then
:ClrHome
:D isp "It's prime!
:Stop
:End
:Output(1,1,Z
:Output(2,1,"divided by
:Output(4,1,"is
:For(θ,1,Z
:"
:Output(3,1,Ans
:Output(5,1,Ans
:Output(8,1,"Calculating
:If L2
:Then
:Output(3,1,L2
:Output(5,1,L1
:Output(8,1,"Press Enter
:P ause
:End
:End
:ClrHome
:D elVar L1DelVar L2Output(1,1,"

Obviously there are some optimizations, but seeing as how the program is less than 500 bytes anyways…

Just stick in the number and away you go! Note that some factors it gives you are simply reciprocals of an earlier one. i.e. You entered 60. An early factor was 3*20. Later you get 20*3.

Preventing this would add some 200 bytes to the prog, something I’m not willing to do.

I’ve found this extremely useful when factoring quadratic equations.

Jan
11

This is my blog. Duh. This is where I will discuss my current projects, hand out routines or code snippets, or any other ideas I have.

First, I must thank DarkerLine for “showing” (I just saw it in his sig) me WordPress.  It’s much more managable than Blogger.com.

When you leave comments, it’s preferred you use the same username you have at UTI.

To kick start this, here’s the source to a little subroutine of mine:

:For(θ,1,2
:For(Z,1,9
:Matr►List[A],Z,L1
:SortA L1
:If not(min(L1=1,2,3,4,5,6,7,8,9
:Goto Q
:End
:[A]T→[A]
:End
:For(A,1,7,3
:For(B,1,7,3
:D elVar CDelVar L19→dim(L1
:For(X,A,A+2
:For(Y,B,B+2
:C+1→C
:[A](X,Y→L1(Ans
:End
:End
:SortA L1
:If not(min(L1=1,2,3,4,5,6,7,8,9
:Goto Q
:End
:End
:D isp "Legitimate.
:Return
:Lbl Q
:D isp "Invalid.

Take a stab at what it does. If it’s not obvious immediately, read on.

It checks the validity of the sudoku in [A]. The idea was presented to me by todlangweilig, which I converted into this code.