Jump to content

R0ger

Members
  • Content Count

    757
  • Joined

  • Last visited

  • Days Won

    3

R0ger last won the day on March 18 2019

R0ger had the most liked content!

Community Reputation

1,113 Excellent

1 Follower

About R0ger

  • Rank
    Dragonstomper
  • Birthday 06/29/1975

Profile Information

  • Gender
    Male
  • Location
    Olomouc, Czech Republic

Recent Profile Visitors

7,249 profile views
  1. It's superb ! Music and graphics are simple, but very nicely done. But some thought and work went into actual gameplay ! That's always nice to see !
  2. Really neat. But it's not new, right ? I think I've heard it already. Anyway I indeed don't work on direct remake. I don't really see much point in direct remakes without any added value. Also I certainly wouldn't go for the first Puyo Puyo. The game got lot better in second instalment, and those rules are used till today in new Sega games. My idea is those current competition rules, and lot of lessons and training modes to hook new players.
  3. @Heaven/TQA I guess I can share the math routines. First let's look at math2.asm: mul_UBBW - macro for multiplication Unsigned Byte * Byte to result Word. Uses tables square1 and square2, which contain (X^2)/4 and -(X^2)/4 sqr2 - macro which does square of word (2 bytes). The trick used here is used in all more complex versions. Square is multiplication of 2 same words .. each consisting of bytes A and B. If we multiply each byte with each byte, we get partial products, which we have to sum together. For these products I use convection AB = A*B .. which is kinda confusing, as the original number are also AB (A followed by B) .. just keep in mind that AB in first row is something different then AB later (yeah, one of the reasons I don't like sharing source codes :-D). AB AB ---- BB AB AB AA ---- AA is A squared, BB is B squared, which can be computed faster than multiplication using simple square table, named square. But that's not the trick. The trick is this. Normally when multiplying, I would sum all these partial products together. But AA and BB don't overlap .. there can be no carry between them. So I can rearrange this sum like this: AABB AB AB ---- Doesn't seem like much now .. but it helps a lot in more complex variants. Also note the routine inverts the negative numbers right at the beginning. Ok, now for math3.asm. It works with 3 byte numbers, which I call triples. First there are some macros mta (move triple), mtai (move triple immediate), adt (add triple) and sbt (sub triple). Basic stuff. Then there is the multiplication. 3 bytes squared into 6 bytes result. Here the sums and their simplification goes like this: ABC ABC ------ CC BC AC BC BB AB AC AB AA ------ AABBCC ABBC ;stored in tmp1 ABBC AC ;stored in mr (result) AC AA, BB and CC are again simple square of original bytes. To continue the confusing names, ABBC is actually A*B followed by B*C. I hope you get the idea. You can see that 'the trick' saved lot of sums and byte manipulations, and the resulting code is quite short. math4.asm then does basically the same for 4 bytes * 4 bytes with 8 bytes result. The sums go like this: ABCD ABCD -------- DD CD BD AD CD CC BC AC BD BC BB AB AD AC AB AA -------- AABBCCDD ABBCCD ;tmp1 ABBCCD ACBD ;tmp2 ACBD AD ;mr AD -------- And that's all. You can see that square written like this is much faster than multiplication of the same sized numbers. With multiplication all the individual partial products would be different, and I wouldn't be able to simply stack them like this. And Mandelbrot formula can be modified so it only uses squares, and no multiplication. So it comes really handy here, and my implementation doesn't use any multiplication, besides the mul_UBBW macro. square.zip
  4. @eegad I keep all my production on my profile page (About me tab).
  5. IMHO only reasonable way to do samples or softsynth is WSYNC. MTP does it that way. It's cheap, simple, and can be easily combined with simple screen modes. Not so much with DLI of course.
  6. I only tried Raspberry pi zero, results are not ideal. Sound never works just right. The rest is OK.
  7. Oh the ideas I have. But what good is it when there is just no time. And this one will need a lot.
  8. Sure sure .. totally not dead. Totally number 1 project. Still there was not much progress in 2020.
  9. I don't understand, how is this different from RMT 8 channel ?
  10. Still it sounds like weird solution. I would call for new feature to said program.
  11. This is the box for Pi 4, with cables on one side, fan, and power button. https://www.argon40.com/argon-one-raspberry-pi-4-case.html
  12. You have boxes for Pi with ports moved all to one side. You can do whatever you want with the ports. My issue with 400 is I move the keyboard around. Or even stow it away. It was not possible with 8bits, but it would be preferable for me even then. It is possible now. Why go back ? Keyboard with 2 cables, one of which is thick HDMI, and second one must not be pulled otherwise the machine will turn off ? No thanks, that's retro too much
  13. I find it highly impractical. Having all the cables in the keyboard, especially when it's this light, is not good. Pi 4 in separate box and standalone BT keyboard seem better in every aspect. I like the exposed header, it would make good education device.
  14. @Rebeep So how about you ? You are not old times Atari user then, right ? How did you find us ? 🙂
×
×
  • Create New...