mirror of
https://github.com/irmen/prog8.git
synced 2025-01-10 20:30:23 +00:00
added list of software to docs
This commit is contained in:
parent
03e0d4b2e8
commit
a1d0e5bb65
@ -1538,11 +1538,6 @@ internal class AssignmentAsmGen(private val program: PtProgram,
|
||||
}
|
||||
|
||||
private fun attemptAssignToByteCompareZero(expr: PtBinaryExpression, assign: AsmAssignment): Boolean {
|
||||
// TODO optimized code for (word1 & word2) == 0 :
|
||||
// if(expr.left.type in WordDatatypes && (expr.operator=="==" || expr.operator=="!=") && expr.left is PtBinaryExpression) {
|
||||
// println("TODO optimize logical word expr ${expr.position}")
|
||||
// }
|
||||
|
||||
when (expr.operator) {
|
||||
"==" -> {
|
||||
when(val dt = expr.left.type) {
|
||||
|
@ -201,6 +201,7 @@ Look in the `syntax-files <https://github.com/irmen/prog8/tree/master/syntax-fil
|
||||
targetsystem.rst
|
||||
technical.rst
|
||||
portingguide.rst
|
||||
software.rst
|
||||
todo.rst
|
||||
|
||||
|
||||
|
34
docs/source/software.rst
Normal file
34
docs/source/software.rst
Normal file
@ -0,0 +1,34 @@
|
||||
|
||||
=========================
|
||||
Software written in Prog8
|
||||
=========================
|
||||
|
||||
Apart from the many `examples <https://github.com/irmen/prog8/tree/master/examples>`_ available in the source code repository,
|
||||
there are also larger pieces of software written using Prog8. Here's a list.
|
||||
|
||||
|
||||
`Assembler <https://github.com/irmen/cx16assem>`_
|
||||
File-based assembler for the Commander X16.
|
||||
|
||||
`Chess <https://github.com/irmen/cx16chess>`_
|
||||
Chess game for the Commander X16, with 2-player or computer opponent game modes.
|
||||
|
||||
`Image viewer <https://github.com/irmen/cx16imageviewer>`_
|
||||
Multi-format image viewer for the Commander X16.
|
||||
Can display C64 Koala, BMP, PCX and Amiga IFF images, including color cycling.
|
||||
|
||||
`Petaxian <https://github.com/cyborgar/Petaxian>`_
|
||||
Galaga type shoot em up game using only petscii graphics. Runs on C64 and Commander X16.
|
||||
|
||||
`Rock Runner <https://github.com/irmen/cx16rockrunner>`_
|
||||
Faithful Boulderdash clone, a well known arcade puzzle game from the 80's.
|
||||
where you must collect all diamonds in a level while avoiding the hazards to reach the exit.
|
||||
Can load the thousands of available fan made level files.
|
||||
This game is for the Commander X16.
|
||||
|
||||
`Shell <https://github.com/irmen/cx16shell>`_
|
||||
Unix like command shell for the Commander X16.
|
||||
|
||||
`Streaming Music Demo <https://github.com/irmen/cx16musicdemo>`_
|
||||
Demoscene like "music demos" for the Commander X16.
|
||||
They display graphics, animated song lyrics, and play a high quality sampled song streamed from disk.
|
@ -1,10 +1,6 @@
|
||||
TODO
|
||||
====
|
||||
|
||||
- possibly optimize assembly output for (word1 & word2 ==0)
|
||||
see attemptAssignToByteCompareZero() for assignment.
|
||||
see testZeroOrJumpElsewhere() for if condition.
|
||||
|
||||
- [on branch: shortcircuit] investigate McCarthy evaluation again? this may also reduce code size perhaps for things like if a>4 or a<2 ....
|
||||
- IR: reduce the number of branch instructions such as BEQ, BEQR, etc (gradually), replace with CMP(I) + status branch instruction
|
||||
- IR: reduce amount of CMP/CMPI after instructions that set the status bits correctly (LOADs? INC? etc), but only after setting the status bits is verified!
|
||||
|
@ -25,6 +25,7 @@ main {
|
||||
cbm.SETTIM(0,0,0)
|
||||
|
||||
while cbm.GETIN()==0 {
|
||||
; sys.waitvsync()
|
||||
doplasma()
|
||||
frames ++
|
||||
}
|
||||
@ -64,15 +65,15 @@ main {
|
||||
|
||||
for y in 0 to txt.DEFAULT_HEIGHT-1 {
|
||||
ybuf[y] = math.sin8u(c1a) + math.sin8u(c1b)
|
||||
c1a += 4
|
||||
c1b += 9
|
||||
c1a += 2
|
||||
c1b += 5
|
||||
}
|
||||
c1A += 3
|
||||
c1B -= 5
|
||||
for x in 0 to txt.DEFAULT_WIDTH-1 {
|
||||
xbuf[x] = math.sin8u(c2a) + math.sin8u(c2b)
|
||||
c2a += 3
|
||||
c2b += 7
|
||||
c2a += 4
|
||||
c2b += 1
|
||||
}
|
||||
c2A += 2
|
||||
c2B -= 3
|
||||
|
Loading…
x
Reference in New Issue
Block a user