Woopsi: Difference between revisions

From GameBrew
No edit summary
No edit summary
 
(9 intermediate revisions by the same user not shown)
Line 1: Line 1:
{{Infobox homebrew
{{Infobox DS Homebrews
| title       = Woopsi
|title=Woopsi
| image       = [[File:Woopsids.jpg]]
|image=Woopsi.jpg
| type        = Operating systems
|description=Nintendo DS GUI library.
| version    = 1.3
|author=Ant 512 (Antony Dzeryn)
| licence    = Mixed
|lastupdated=2011/07/21
| author     = Ant 512 (Antony Dzeryn)
|type=Operating systems
| website    = http://woopsi.org/
|version=1.3
| download   = [https://www.gamebrew.org/images/7/78/Woopsidsdemo13.zip DS demo] and [https://www.gamebrew.org/images/3/33/Woopsinds13.zip Woopsi]
|license=Mixed
| source     = https://bitbucket.org/ant512/woopsi
|download=https://dlhb.gamebrew.org/dshomebrew/woopsi.7z?k33p0fil35 1.3 & Demo
|website=http://woopsi.org
|source=https://bitbucket.org/ant512/woopsi
}}
}}
Woopsi is a Nintendo DS GUI library for rapidly creating user interfaces for homebrew software. Modelled after the AmigaOS windowing system.
Woopsi is a Nintendo DS GUI library for rapidly creating user interfaces for homebrew software. Modelled after the AmigaOS windowing system.


Line 35: Line 36:
It requires the latest [[devkitPro|devkitPro]] and do one of the following things as operating system:
It requires the latest [[devkitPro|devkitPro]] and do one of the following things as operating system:


*'''Windows''' - 2 methods available. Use the Install.bat found in the folder or copy the folder Woopsi libwoopsi to C:\devkitPro.
* Windows - 2 methods available. Use the Install.bat found in the folder or copy the folder Woopsi libwoopsi to C:\devkitPro.
*'''Linux''' - Same as the second option of Windows, copy the folder libwoopsi to C:\devkitPro.
* Linux - Same as the second option of Windows, copy the folder libwoopsi to C:\devkitPro.
*'''MacOSX''' - Compile what is in the folder Woopsi.
* MacOSX - Compile what is in the folder Woopsi.


==User guide==
==User guide==
Line 44: Line 45:
Open a command prompt and CD to the template folder (relative to the document) and type:
Open a command prompt and CD to the template folder (relative to the document) and type:


  make <br>
  make
 
Open the /template/Release/template.nds ROM file in a DS emulator or copy it to your flash cart and load it up.
Open the /template/Release/template.nds ROM file in a DS emulator or copy it to your flash cart and load it up.


==Media==
==Media==
'''Woopsi demo v0.99.3''' ([https://www.youtube.com/watch?v=aOA650uKf8s Cid2Mizard]) <br>
<youtube>aOA650uKf8s</youtube>
<youtube>aOA650uKf8s</youtube>


Line 94: Line 96:
Thanks to - The devKitPro team.
Thanks to - The devKitPro team.


<br>
==External links==
* Official website - http://woopsi.org
* Bitbucket - https://bitbucket.org/ant512/woopsi
 
[[Category:DS homebrew applications]]
[[Category:DS homebrew applications]]
[[Category:Operating systems on DS]]
[[Category:Operating systems on DS]]

Latest revision as of 08:12, 2 February 2024

Woopsi
Woopsi.jpg
General
AuthorAnt 512 (Antony Dzeryn)
TypeOperating systems
Version1.3
LicenseMixed
Last Updated2011/07/21
Links
1.3 & Demo Download
Website
Source

Woopsi is a Nintendo DS GUI library for rapidly creating user interfaces for homebrew software. Modelled after the AmigaOS windowing system.

It is a BSD-licenced GUI toolkit for the Nintendo DS, written in C++. It features a 2D graphics library with fast clipping routines and a full suite of UI components, including text boxes, scrolling lists, buttons, windows, etc. It can be used to produce everything from simple GUIs to full-blown window managers.

Features

  • Support for multiple windows.
  • Full set of components of the user interface.
  • The elements (windows) can be dragged.
  • Windows without frames.
  • Debug mode.
  • Optimized application to draw and erase.
  • System events.
  • Automatic application to collect garbage.
  • Complete API to build new applications.
  • Different types of fonts supported.
  • Oriented design to easily adapt to other programs in C++.
  • Simple API for rapid creation of a graphical user interface.
  • FIFO multitasking, each application runs at a time.
  • Unicode strings encoded with UTF-8.
  • Support for Windows applications (font2font, bmp2font, etc).

Installation

It requires the latest devkitPro and do one of the following things as operating system:

  • Windows - 2 methods available. Use the Install.bat found in the folder or copy the folder Woopsi libwoopsi to C:\devkitPro.
  • Linux - Same as the second option of Windows, copy the folder libwoopsi to C:\devkitPro.
  • MacOSX - Compile what is in the folder Woopsi.

User guide

To test the installation:

Open a command prompt and CD to the template folder (relative to the document) and type:

make

Open the /template/Release/template.nds ROM file in a DS emulator or copy it to your flash cart and load it up.

Media

Woopsi demo v0.99.3 (Cid2Mizard)

Changelog

V1.3

Fixes:

  • Label and TextBox are more efficient when rendering text changes.
  • Removed unused GLYPH_MAP_SIZE constant from fontbase.h.
  • Header file in template moved into include directory.
  • Animation::play() stops if there are no frames to play.
  • Animation::getCurrentFrame() returns NULL if there are no frames.
  • Animation::getCurrentBitmap() returns NULL if there are no bitmaps.
  • Fixed memory leak when deleting SDL framebuffer.
  • Removed extraneous globals from woopsifuncs.cpp.
  • WoopsiString::subString() passes the correct arguments to the WoopsiString constructor.
  • StringIterator::moveTo() ignores attempts to move to negative indices.
  • Improved use of DMA hardware.
  • Updated C# tools.
  • Removed Visual Studio files.

New Features:

  • Added WoopsiTimer::isRunning().
  • Added SuperBitmap::setX().
  • Added SuperBitmap::setY().
  • Added SuperBitmap::getX().
  • Added SuperBitmap::getY().
  • Added FontConverter, a winforms UI for font2font.

Credits

Coding and design - Antony Dzeryn.

Testing, technical advice, other contributions - Jeff Laing.

PALib independence - Steven Harrison.

Testing and suggestions - John Buxton, Chase, Leonelhs, Carpfish.

Unicode work and libfreetype integration - Olivier Binda (Lakedaemon).

Testing and gadget contributions - Mark Adamson.

Simian Zombie logo - John Clay.

Thanks to - The devKitPro team.

External links

Advertising: