SmileBASIC returns to the 3DS eShop
SmileBASIC was recently pulled from the 3DS eShop due to a exploit discovered leading to homebrew installation. The issue has now been addressed, and the app has returned.
SmileBASIC can now be purchased once again. Additionally, version 3.3.2 is now available for download.
We’ve included extensive patch notes about the new update below.
Bug Fixes in Ver. 3.3.2 (August 10, 2016)
- Vulnerability due to checking given parameters found in BGSCREEN instruction
- Screen display is corrupted if a GRP file is loaded by LOAD instruction with a strings or an array specified in the second or third arguments then the application stops responding as it goes
- In an infinite loop with WHILE or GOTO instruction a LOAD function with an nonexistent file and FALSE parameter specified causes a program unstoppable by pressing the STOP or START button in an error dialog
- RINGCOPY instruction may bring SmileBASIC a forced termination if an negative number is set to a “copy destination offset” argument
- PRGNAME function returns a corrupted file name if a program is loaded with a length of both a project and a file is 14 characters long
- MIN or MAX function returns unexpected values if an array with zero elements is specified
CHKFILE function returns incorrect value if any file(s) included in a DLC project which does not exist or not yet purchased are specified
- BACKTRACE instruction does not work properly in the DIRECT mode
- FILES and LOAD instruction fails if PROJECT instruction points to the SYS folder as a default project
MENU and UI-related
- Incorrect characters on “á” key top
- Incorrect definition of the standard sprite #166
Compatibility notes until Ver.3.3.2 (As of August 10, 2016)
- If the newly added instructions have already been defined, duplicate function errors will occur.
- (The newly added instructions are: BGMPAUSE, BGMCONT, SNDSTOP, CLIPBOARD, GOFS, BIN$, DLCOPEN, BIQUAD, BQPARAM, FFT, IFFT, FFTWFN, PCMSTREAM, PCMPOS, PCMVOL, PCMSTOP, PCMCONT, and ARYOP. The new system variables are: MILLISEC and EXTFEATURE.)
- Previously, when loading a text file, &H0D was converted to &H0A. However, from Ver. 3.3.0, this conversion will no longer be made.
- Fixed so that the Z-coordinate will also be tracked when setting SPLINK. Due to this change, the display priority for the link source (child) when using SPLINK will change.
- Up until Ver. 3.1.0, the SQR function was mistakenly also registered as the SQRT function. This was deleted in Ver. 3.2.0.
- Instruction and function checks are now stricter. If an argument was incorrectly specified, up until Ver. 3.1.0 the argument was ignored, but from Ver. 3.2.0 an error may occur.
- In the sample game GAME3JUMP, the BG priority has been changed from 0<1<2<3 to 3>2>1>0. Therefore, when creating a program using the GAME3JUMP map data, unexpected behavior may occur.
- A function was added that gets empty management numbers in the SPSET instruction. Due to the addition of this function, processes that handle sprites (e.g. SPOFS, SPHIDE) will return an error when the SPSET instruction is not passed. When using a sprite, it must first be converted to SPSET.
- Up until now, there was a bug in which if SPCHR was used during SPHIDE, the sprite’s state would become SPSHOW. The new version has been fixed so that even if SPCHR is used, the sprite’s state will not become SPSHOW (the sprite will not be displayed).
Therefore, programs in which display is controlled using only a combination of SPHIDE and SPCHR, the sprite’s state will no longer become SPSHOW (the sprite will no longer be displayed).
Please add SPSHOW after SPCHR to display the program.
- The Origin X and Y coordinates for sprites with a definition number greater than 2048 that are installed as standard are adjusted to a more general position. The center of the diagram seen from the top becomes the origin and is not limited to the footing of the base axis.
Therefore, the home coordinate for sprites with a definition number greater than 2048 will change (mainly image types that are viewed from directly above).
For example, as the origin of images, such as a fighter plane, has changed from the bottom to the middle of the image, the behavior of programs that use rotation may differ to the previous version.
|3243-3270||Option, Shmup Enemy, Spiky Ball, Worm|
|3299-3341||Shmup Player Craft, Enemy Robot|
|3341-3415||Shield, Effect, Laser, Bullet, Bubble, Water Droplet, Icicle|
|3465-3470||Large Enemy, Submarine|
|3480-3494||Hakase, Wanpaku, Kanzaki, Intelli, Dummy|