
Firstly, remember that the mage returned to their old tower, on a whim.
They had entrusted it to the systems that were it's foundation.
This had certainly saved it from decay, but it had been unchanging.
Stagnant, really.
They had learned things since then, and they made sure to make some
 improvements while they were there.

Remembering this paragraph proves you have bothered to open this file.
Should you come to me with usability issues, I will check for this.
If I find your understanding incomplete,
 I will refuse to help you until you have read this file.

 -- COMMON ERRORS --

"Couldn't open piyoDrums.bin":
 PiyoPiyoJ expects piyoDrums.bin to be in the "current directory" (aka working directory).
 This should be the directory PiyoPiyoJ was run from, but that may not act correctly on some systems.
 Note that PiyoPiyoJ will still function without drums.

PiyoPiyoJ is too big/fullscreen malfunctions:
 Remove files "PiyoPiyoJ.X2", "PiyoPiyoJ.X3", or "PiyoPiyoJ.FS" from the current directory.
 This should be the directory PiyoPiyoJ was run from, but that may not act correctly on some systems.

 -- PiyoPiyoJ v6.1 --

Why it exists:
 An alternative to PiyoPiyo, basically.
 Also, it can be windowed, and is resizable.
 PiyoPiyo meanwhile is always fullscreen.

Usage:
 Just play around with it.
 The screen is split into two sections - the thing you're editing,
  and the editing/playback controls.

 When editing the note-pattern, the top section is split into two again -
  the top part being the notes,
  and the bottom part being the panning control.
  The pan control is somewhat like notes, in that you can click to set
   a pan setting, or click on the current setting to clear it.
  The freed up row is used for the bar number.

 A specific horizontal section of the notes being enveloped in squares indicates this section is selected.
 This is used by the Paste tools to indicate the source.
 Note that this selection can be independent of the current channel,
  depending on what tool you use to paste from it.

 A note is a white dot surrounded by a white rounded rectangle.
 A note that is not on the current channel is a greyish dot, darker than the surrounding grid.

 The start and end loop points are green and red lines respectively,
  where the green line has "S" symbols and the red line has "E" symbols.

 When editing an instrument with the 'Edit' button,
  the top section is split into the waveform (top), the envelope (bottom-left),
  and the parameters (bottom-middle/right).

 As for the editing/playback controls...

 At the very top of them is the song-position scrollbar.
 This can be used to seek through the song very quickly.

 Immediately below is the channel-changer, status line, and playback controller.
  '1', '2', '3', 'P' control the current channel. 'Edit' edits that track's details.
  (This option is useless on 'P' except under undocumented circumstances.)
  'L' on this enables/disables loop - '>' is play -
   and '<<' / '>>' seek to the beginning/end of the song.
  '/', meanwhile, makes the song go at half-speed.

 Further below is the tool-section.
 It shows information on the current tool, and lets you select the tool to use.
 At the bottom is the File bar.
 This bar controls things across the entire file,
  such as loading, saving, time-adjustment (adds/removes spacing between all columns in the file),
  undo/redo (This may show '----', meaning "unavailable". 'X' clears undo/redo buffer.)
  and the beat length (in milliseconds) and drum volume controls.

System Requirements:
 Java 8, OpenGL 1.5 / ES 1.1 with a few reasonably trivial extensions.
 Much effort was put towards support for several architectures and operating systems.

Release Notes:
 Hopefully this just fixes everything and nobody will bother me about this program again.
 According to my note-to-self,
  I am apparently supposed to delete .class files (but not .java files) that go unused by PiyoPiyoJ.

Additional Credits: See CREDITS.txt

Changelog:

 ---Nov 12th, 2025--- DATE SUBJECT TO CHANGE
 V7.fix bug where isEmpty check would use the wrong frame coordinates leading to incorrect trimming of notes after loop end
    add 'reference track' support (can play OGG, WAV, MP3)
    updated the engine

 ---May 25th, 2022---
 V6.1.X1 scale as default again
 V6.XM export,
    filebrowser stuff
    even more porting
    resolution controls hastily patched in at the last minute
    brought PPJ into the hs2 maven group
    changed how tools are accessed to be neater

 ---April 17th, 2018---
 V5.MIDI export, + whatever UI adjustments I forgot to mention, including filebrowser stuff
    But mostly MIDI export. zxin's idea.

 ---April 2nd, 2018---
 V4.UI improvements and stuff
    Undo buffer clear needs confirmation.
    WAV export is now a thing.
    The output is 44100hz, 16-bit signed, with the marker `/PPJ`,
     because I don't trust Nicalis not to use the thing for their own ends somehow.
    Not that it'll make much of a difference, the marker's lost on re-encodings...
    You can export both an "intro" file (main + first loop),
     and a "loop" file (second loop).
    You can scroll with your mouse over the main note display.
    There are bar numbers now.
    The sharp indicators have a sort of greyish extension over the main panel.
    Pan mechanism has changed.
    New files don't have selections covering stuff.
    Probably some other stuff.
    Left Shift can act as a substitute for \ on non-UK keyboards.

 ---March 3rd, 2018---
 V3.Port to gabien ipcress
    double-checked all credits details
    there's undo/redo
    there's the Tx & T/ buttons for time-adjust
    the tool list is scrollable
    the fonts are better
    the entire thing has had a change of theme
    there's a scrollbar for scrolling through the song
    the playback engine is Better In More Ways
    there's two secret features
    oh, yeah, and the waveform editor sucks less
    (yes, the wrapping is deliberate)
    and last but not least everything's on gabien-ipcress for a theoretical Android port if I were so inclined
 
 ---July 14th, 2015---
 V2.1.A small change.
    + Added text(the letters of notes) on notes.
 
 ---May 19th, 2015---
 V2.Jazz Jackalope's requests
    + Stopped accounting for Ikachan's timing issues, I apparently mis-judged(songs were too slow)
    + Current position display now rounds, so it doesn't go off the screen.
    + Added "Loop" control.
    + Left and right arrow keys now move through the song.
    + Saving the file will now trim empty frames at the end.
    + A keyboard is now displayed at the left of the screen.
 
 ---May 1st, 2015---
 V1.Initial release

