Compare commits

..

309 Commits

Author SHA1 Message Date
Fledge68
d24a16e5c3 - make sure auto cios chooses a base of 56 or higher.
- change second i to j to fix a possible boot arg issue.
2024-08-14 16:03:11 -05:00
Fledge68
80e4ed0170
Update README.md one more time 2024-07-29 17:42:47 -05:00
Fledge68
3335cf53bd - readme wiki links updated. 2024-07-29 17:35:14 -05:00
Fledge68
88c6fdb6bd
Merge pull request #391 from upintheairsheep/patch-1
Changed Google Sites Link to Wayback Machine Link.
2024-07-29 17:26:38 -05:00
Fledge68
26146cf895 - fixed wad shared content installation by w3irdv. 2024-07-29 17:07:30 -05:00
Fledge68
6c1e85279e -fix for last commit. now wii games should work via wiigsc. 2024-07-29 09:29:08 -05:00
Fledge68
a1f72297e3 - fixed to launch wii, gamecube, and wiiware/vc games via wiigsc. note you should have wiiflow, these games, and their settings all set via wfl first. wiigsc is just a short cut to lauch wfl with args set to launch a specific game ID. 2024-07-15 15:22:41 -05:00
upintheairsheep
3927544c93
Changed Google Sites Link to Wayback Machine Link.
The original site got deleted due to the Classic Google Sites shutdown.
2024-05-26 21:50:25 -07:00
Fledge68
48fdaf50e2
Merge pull request #356 from eku/enhancement/log_skipped_files
Better logging for skipped files.
2024-04-09 13:14:26 -05:00
Fledge68
c7e49fa617
Merge pull request #367 from Brawl345/patch11
Update German translation
2024-04-09 13:10:04 -05:00
Fledge68
a0ef54af49 - fix for 'auto' game IOS option. in v5.5.4 'auto' causes the game to use a d2x cios base 38 if you have it installed, which prevents game from booting. this fix prevents this from happening. 2024-04-09 12:54:04 -05:00
c5c769675a
Update German translation 2023-09-21 14:54:46 +02:00
Fledge68
14af9a9cf3 - update xml for v5.5.4 release. 2023-09-20 18:27:27 -05:00
Fledge68
df767e9ba1
Merge pull request #362 from DDinghoya/master-1
Update korean.ini for WFL 5.5.4 Beta 3
2023-09-20 17:27:27 -05:00
Fledge68
5e497f7a04 - official v.5.5.4
- re-added categories for homebrew
- fix for channels when using the channel type plugins
2023-09-20 05:41:27 -05:00
DDinghoya
c6bfb7d50a
Update korean.ini for WFL 5.5.4 Beta 3 2023-08-04 20:58:58 +09:00
Erik Kunze
c49df74c65 Simplify troubleshooting of games that are
supposedly not found by logging the files
that are skipped according to the RegEx.
2023-06-11 16:57:38 +02:00
Fledge68
5415c95fef - v5.5.4 beta 3 2023-05-26 17:32:58 -05:00
Fledge68
1989cb3222 - possible fix for GPT drives with partition types other than FAT (NTFS, EXT2). 2023-05-26 17:21:40 -05:00
Fledge68
57e7e64b1f
Merge pull request #350 from kcpants/master
- Ignore USB storage devices without an MBR or WBFS signature
2023-05-26 16:49:13 -05:00
Fledge68
4d03e0de7b
Merge pull request #347 from MayanKoyote/master
Update russian.ini
2023-05-26 16:40:26 -05:00
Fledge68
b7fefd0c02 - CI update #4 2023-05-26 16:31:38 -05:00
Fledge68
089e0ece6b - CI update #3 2023-05-26 15:42:58 -05:00
Fledge68
863135df9d - CI update #2 2023-05-26 15:37:36 -05:00
Fledge68
5213311515 - updated CI 2023-05-26 15:28:56 -05:00
Fledge68
04b06e438d - fixed to compile with devkitppc r42-1 and libogc 2.4.0
- updated libcustomfat to libfat v1.2.0/1.1.5
2023-05-26 15:16:24 -05:00
Fledge68
07a44551f9 - added some remarks and removed a couple unneeded lines. 2023-05-19 17:55:44 -05:00
Fledge68
cde0c4ab53 - fix for sam & max and back to the future. 2023-05-07 17:48:49 -05:00
Fledge68
04cdd3de52 - compiled with PPC r41-2 and libogc 2.4.0 commit a2841dc. Hopefully fixes a time issue. 2023-05-07 17:31:19 -05:00
kcpants
e0bb6e936b - Ignore USB storage devices without an MBR or WBFS signature (fixes #338, reverts #343) thanks to wiidev/blackb0x for error handling and wbfs check 2023-04-29 14:57:23 -04:00
MayanKoyote
158a40d89b
making changes related to commit 1239b90 2023-04-13 20:55:33 +05:00
MayanKoyote
38d86fe6b3
minor cosmetics 2023-04-13 16:37:40 +05:00
Fledge68
1239b90751 - added framebuffer video width game option taken from usblgx. thanks to wiidev/blackb0x. #345 2023-04-07 17:06:30 -05:00
Fledge68
b878b9e2ee - only change channels type when needed. 2023-03-25 18:26:31 -05:00
Fledge68
1fa1054f04 - changed the default emunand name from default to wf_nand. if you are using the old default name that is still fine. 2023-03-22 17:39:27 -05:00
Fledge68
9d41f679c3 - moved emunand partition setting from partitions menu to emunand setup menu. hopefully makes it less complicated. 2023-03-22 17:21:06 -05:00
Fledge68
bd6c18802c - just in case people don't update their language file. 2023-03-22 05:26:14 -05:00
Fledge68
290b75fcd5 - updated language files for last commit. 2023-03-21 18:34:32 -05:00
Fledge68
78832585be - fixed translation of total size: text when dumping a nand or nand file. 2023-03-21 18:17:34 -05:00
Fledge68
877b257e47 - fixed changing pages on the cheats menu 2023-03-20 14:05:21 -05:00
Fledge68
c175cf6bb6 - fixed categories i broke a while back. 2023-03-19 18:18:06 -05:00
Fledge68
31f9d0edc0 - added kirby patch. (wiidev)(blackb0x) 2023-03-17 16:25:30 -05:00
Fledge68
da80913558 Merge branch 'master' of https://github.com/Fledge68/WiiFlow_Lite 2023-03-17 13:22:50 -05:00
Fledge68
2d5ed10cfa - restored "Default" theme back. 2023-03-17 13:21:48 -05:00
Fledge68
5e9719d53b
Merge pull request #336 from MayanKoyote/master
Updated, ultra-modern Russian translation
2023-03-17 12:45:54 -05:00
MayanKoyote
7f47c0ead2
Update russian.ini
minor cosmetics
2023-03-17 22:41:19 +05:00
Fledge68
3e46a009da - again 2023-03-17 12:23:12 -05:00
Fledge68
2d3f38a079 - next attempt. 2023-03-17 09:36:17 -05:00
Fledge68
276c156d97 - CI attempt #4 2023-03-17 09:15:40 -05:00
Fledge68
6556df346b - attempt #3. i love guessing. 2023-03-17 08:56:52 -05:00
Fledge68
1e3e9f008b - try again. 2023-03-17 08:51:29 -05:00
Fledge68
3f4f9d1d08 - attempt to fix CI (Continuous Integration) to use github enviroments. 2023-03-17 08:47:25 -05:00
Fledge68
882ad5c672 Merge branch 'master' of https://github.com/Fledge68/WiiFlow_Lite 2023-03-17 08:17:20 -05:00
Fledge68
95d3cd63b1 - fixed main settings page 3 default video mode and game language. 2023-03-17 08:17:00 -05:00
Fledge68
d77459ad2d
Merge pull request #343 from kcpants/master
Ignore USB storage devices with unknown partition types
2023-03-17 06:03:35 -05:00
Fledge68
d5f0ca6e01 - translation fixes for issue #342. (I hope) 2023-03-16 17:45:51 -05:00
kcpants
9984778c46 Ignore USB storage devices with unknown partition types 2023-03-16 18:25:06 -04:00
Fledge68
3ac8ecdc5c - added option to init network on start (issue #335) but you have to manually edit wiiflow_lite.ini. there's no option in startup settings (yet). just add [GENERAL] async_network=yes and save it. 2023-03-16 09:22:25 -05:00
MayanKoyote
9498f82038
Merge branch 'Fledge68:master' into master 2023-03-16 11:42:47 +05:00
Fledge68
7d4db44456 - added "auto" cios selection based on the games' IOS and d2x cios installed. only works for d2x cios. if you wish to use a hermes cios you can still manually choose 222 - 225. note if more than one cios have the same base the higher slot will be chosen. 2023-03-15 13:50:47 -05:00
Fledge68
aceb49ceb8 - fixed 2 recent mistakes. the translation 'auto' and the results of nand extraction should now clear. issues #340 and #341. 2023-03-12 17:36:25 -05:00
MayanKoyote
ed97c7ace2
Update russian.ini
Making changes related to commit 2e3a862
2023-03-08 23:52:48 +05:00
MayanKoyote
3ad6a6cd8d
Merge branch 'Fledge68:master' into master 2023-03-08 23:46:55 +05:00
Fledge68
2e3a862450 - added option to 'Reset game settings to defaults'
- fixed hiding sourceflow covers broken in a previous commit.
- fixed 'Auto' text to translate to other languages.
- fixed error messages to wrap the text if too long.
2023-03-05 18:31:14 -06:00
MayanKoyote
d1eab33a68
Add files via upload
new
2023-02-08 19:16:34 +05:00
MayanKoyote
e98bf31d3f
Add files via upload
modern
2023-02-08 19:15:53 +05:00
MayanKoyote
345d7fd6e0
Delete russian.ini
obsolete
2023-02-08 19:15:26 +05:00
Fledge68
2fd07be7a8 - the correct fix for issue #328. 2023-01-22 16:14:05 -06:00
Fledge68
363caf4794 - fixed sorting covers.
- added sorting by year released for all games. requires 'Reload Cache'.
- added playcount and lastplayed for plugin games.

B+PLUS to set sorting type (alphabet, playcount, lastplayed, players, and year. wifiplayers for wii games and game ID (1st letter) for VC games).
B+up/down to next/prev sorted item.
B on next/prev icons to next/prev sorted item.
2023-01-20 17:53:52 -06:00
Fledge68
2826ec575e - fixed custom_titles to use the new format of platform name and game ID. old format will be updated to new format so backup custom_titles before using this commit. 2023-01-09 18:06:01 -06:00
Fledge68
c4b949acab - fix for issue #318. favorites and adult_only in gameconfig1 and categories in categories_lite will now use the platform name and game ID if using the plugin database files. if either the platform name or game ID are not available we will still use old method of plugin magic and game title. With new method if old plugin magic and game title is found it will be converted to platform name and game ID. because of this it is recommended to backup gameconfig1 and categories_lite just in case you have issues with new WFL and need to go back to old WFL.
Titlesdump.ini has also been updated to new method and will now include output of the filtered game list for plugins. Set [GENERAL] dump_list=yes before starting WFL. set it to 'no' when done dumping your lists.
2023-01-08 17:25:45 -06:00
Fledge68
4be2d6efda - fix stringToVector if the string ends in a separator. issue #328 2022-12-10 16:07:47 -06:00
Fledge68
d5bfdedb19 - removed m_source_cnt. its not used anymore. 2022-12-10 15:36:19 -06:00
Fledge68
a2c02143f5 - added the partition option to select SD and USB together. issue #325. BUT if you have the same game on both it will be shown twice. adding a check to see if the game is already listed for every time a game is added i think will slow down the process.
- added DEFINES for all internal plugin magics.
2022-12-10 15:10:29 -06:00
Fledge68
8e601ae97e - Made path to wiitdb.xml configurable. issue #327. Use Path Manager menu page 2. 2022-12-05 08:57:39 -06:00
Fledge68
d3eebff59b - try cache-1 for CI workflows 2022-11-30 09:09:04 -06:00
Fledge68
4db7b7a5c2 - update CI to use devkitPPC-r41-2. 2022-11-30 08:56:17 -06:00
Fledge68
cc9aa985ed - added plugin game setting to reload its cached cover in case you change the png for it.
- fixed the Select Plugin ALL button to work with the new theme changes.
- other minor changes.
2022-11-29 15:39:12 -06:00
Fledge68
25a67d6539 - all checkboxes are now a single button. we just change the texture from off to on instead of having 2 different buttons and hiding the off to show the on or vice versa. shrinks wiiflow dol and theme ini's. for categories, source menu editor, and plugin select menu's.
- fixed wiiflow language setting. I must've broke it a while back.
2022-10-18 15:15:54 -05:00
Fledge68
3da96c7737 - only change page 2 text when selecting a different language. 2022-09-08 16:39:25 -05:00
Fledge68
f11fe23f16 - small coding change to get rid of a stupid compile warning. 2022-09-08 16:33:45 -05:00
Fledge68
b71f76c72f - another mistake fix for config emu nand menu. 2022-09-07 13:39:22 -05:00
Fledge68
67dc2fa7fb Merge branch 'master' of https://github.com/Fledge68/WiiFlow_Lite 2022-09-07 10:00:42 -05:00
Fledge68
b2359ad180
Merge pull request #316 from eku/feature/scummvm_gametdb
Make use of GamesTDB for ScummVM titles
2022-09-07 09:34:57 -05:00
Fledge68
62813afad3
Merge pull request #312 from eku/feature/update_total_games_count
Show total number of games on filter change
2022-09-07 09:34:07 -05:00
Fledge68
821b01a533 - date patch for wiituka in menu_game_boot.cpp
- fixed nand selection i messed up a few commits back in menu_nanemu.cpp
- other minor coding fixes to compile with devkitppc r41-2 and libogc 2.3.1-1
2022-09-07 09:33:31 -05:00
Fledge68
ae706c6597 - changed all m_wbfs to m_download that i missed when i changed menu_download.cpp a few commits back. 2022-08-24 17:26:36 -05:00
Fledge68
ab6c9aaf9e - fix simple typo mistake for main config buttons. 2022-08-24 13:10:34 -05:00
Erik Kunze
6e3669ae65 Make use of GamesTDB for ScummVM titles to get
localisation of the title.
2022-08-08 20:23:23 +02:00
Fledge68
2a94fb6cdd - update regex default again thanks to Chrondelta. 2022-08-06 17:37:59 -05:00
Fledge68
e9649fc8d0 - changed game settings menu to use main config buttons and labels. 2022-08-05 15:04:05 -05:00
Fledge68
626c46b7fa - separated config GC game from config game. and use main config buttons.
- updated regex filename skip default.
2022-07-26 17:58:40 -05:00
Erik Kunze
412e46b712 This change causes the display of the number of
games to reappear whenever it changes by filter
(category, favourite).
2022-07-24 13:38:52 +02:00
Fledge68
23874285c2 - a little more OCD and cleanup. 2022-07-14 16:48:12 -05:00
Fledge68
a17c2b7f9d - OCD cleanup. 2022-07-13 17:11:44 -05:00
Fledge68
7f269c9406 - downloads menu now using main config buttons and cleaned up. 2022-07-09 12:18:37 -05:00
Fledge68
5a4f3fd759 - menu partitions config now using main config buttons. 2022-07-07 17:12:42 -05:00
Fledge68
637be5b08c - paths config menu using main config buttons. 2022-07-07 15:31:05 -05:00
Fledge68
5fa567e298 - nand emulation config menu using main config buttons. 2022-07-06 17:34:55 -05:00
Fledge68
1e16afc5bf - cover banner menu using main config buttons.
- other misc config menu changes.
2022-07-05 13:22:03 -05:00
Fledge68
24e5e28abb - config source using main config buttons.
- parental lock for source menu editor added.
2022-07-01 17:36:03 -05:00
Fledge68
172bb46207 Merge branch 'master' of https://github.com/Fledge68/WiiFlow_Lite 2022-06-27 17:16:29 -05:00
Fledge68
05b75dbd98
Merge pull request #307 from CrewMdk/master
Updated language
2022-06-27 17:05:16 -05:00
Fledge68
3335827419 - more config menu's cleanup and restructuring. 2022-06-24 13:05:59 -05:00
Fledge68
6b1dcabf36 - moved SD only to wiiflow save file to possibly speed up wiiflow start up. note very first time will be slow and try to mount a USB drive but afterwards will be fast again.
- removed splash image on start up.
2022-06-17 17:29:09 -05:00
Fledge68
87b6379641 - fixed source menu buttons hiding/showing. 2022-06-15 06:24:56 -05:00
Fledge68
5df5ccc2ee - changed gamecube settings menu to use main settings buttons.
- fixed reload cache when both channel types is chosen.
- minor fixes to source menu code.
2022-06-14 17:54:29 -05:00
Fledge68
c5f993ef18 - cleanup for last commit 2022-05-31 17:47:22 -05:00
Fledge68
fe2c4d50ce - rewrote main config to re-use buttons for every page.
- fixed using 1 or 2 to change sourceflow.
- fixed deleting cached wfc cover when you use X to delete a game.
- fixed showing number of games when you turn favorites on or off.
2022-05-31 17:33:27 -05:00
Fledge68
dff4272de0 - gui sound volume fix.
- various minor code changes.
2022-05-06 17:55:01 -05:00
CrewMdk
30a5f54cbc Updated language 2022-04-17 04:30:28 -05:00
Fledge68
bf5870677a - v5.5.3 2022-03-23 09:50:10 -05:00
Fledge68
20a307e175 - minor changes. 2022-02-28 12:48:37 -06:00
Fledge68
ef1f601e9b - disable splash image and wait animation if direct launching a wii game (wiiGSC). 2022-02-18 17:50:51 -06:00
Fledge68
e1d24b2c82 - added option to use nands not vwiinands when on wii u. set manually by changing [CHANNELS] use_vwiinands=no in wiiflow_lite.ini 2022-02-18 17:20:12 -06:00
Fledge68
d9e8333d71 - fixed using hermes cios in the rare case you ever need to use it. 2022-02-16 08:51:02 -06:00
Fledge68
5eae62928a - update meta.xml and some minor clean up. 2022-02-07 08:25:50 -06:00
Fledge68
3fc14abfcd
Merge pull request #293 from DDinghoya/patch-23
Update korean.ini
2022-02-07 07:42:31 -06:00
Fledge68
6f6b3ec2d8 external_booter.bin fixes that i missed when i changed the booter in v5.5.0 beta 12 commit 9f7da43
- added missing *BI2 = 0x817E5480; to  Disc_SetLowMem() for wii games.
- added missing memcpy((void*)0x80001800, (void*)Disc_ID, 8); needed for debugger and ocarina cheats engine.

- fixed default setting for savegame emulation back to OFF (0). v5.5.0 and v5.5.1 new clean install's would set it to FULL (2) which caused wii games to crash on boot up. if you have this issue you can simply go to main settings>nand emulation settings and set it to OFF.
- changes to STexture::fromPNG() to hopefully clear up the out of mem issue when downloading and converting the cover png to a wfc cache file.
- v5.5.2
2022-02-07 07:19:27 -06:00
DDinghoya
2553cb2577
Update korean.ini 2022-01-22 13:01:50 +09:00
Fledge68
8a5a0fd438 - reinstated Fix94's keep USB alive thread for IOS58 mode.
- fixed reloading wiiflow after any changes on Startup Settings menu.
- changed the order of functions for ShutdownBeforeExit() to possible fix any shutdown and gameboot issues.
- v5.5.2 beta 1
2022-01-17 14:50:40 -06:00
Fledge68
105a1bc623 - fix for channels video modes broken in 5.5.0
- now always use coverfolder for plugins
- v5.5.1
2022-01-14 15:10:56 -06:00
Fledge68
8b2bacf223 - just minor clean up 2021-12-29 13:19:33 -06:00
Fledge68
6b37a3c362
Merge pull request #289 from DDinghoya/patch-22
Update korean.ini
2021-12-10 08:20:27 -06:00
DDinghoya
721629235d
Update korean.ini 2021-12-09 20:01:04 +09:00
Fledge68
f9dffae20f - v5.5.0 2021-12-08 12:42:37 -06:00
Fledge68
9faa6db839 - minor changes for homebrew/plugin dol booting. 2021-12-03 17:37:35 -06:00
Fledge68
5e4535bbf7 - removed the 480p fix exclusion of metafortress games. now you can use cheats or gameconfig.txt to disable metafortress or those games not work. 2021-12-01 15:18:14 -06:00
Fledge68
0ce8640d06 - added lots of comments and moved some variables around for for wii game booting. 2021-12-01 10:33:01 -06:00
Fledge68
9f7da43da4 - beta 12 (external booter changes).
- fixed launching of real nand channels.
- fixed launching of forwarder channels, but some apps (ie. wiimcc and savegame manager gx) don't connect with USB devices. if they are on real nand use the 'custom' option in game settings for these forwarders.
- fixed launching HBC on real nand. don't know if its even possible on a emu nand.
- 480p pixel patch for nand wiiware/vc games no longer requires apploader setting ON.
- Exclude Prince of Persia: The Forgotten Sands and a few games that use MetaFortress from using 480p pixel patch
- added giantpunes returnto patch for channels just in case not using d2x cios. some reason it was missing.
2021-11-29 11:36:30 -06:00
Fledge68
a45cc4cbdf - some minor misc. changes. 2021-11-12 18:11:42 -06:00
Fledge68
7f4f6ea2fc - changed emu nand settings so they don't change if you you remove a device. 2021-11-10 17:56:44 -06:00
Fledge68
85c0f05b6d - removed some bootup error messages that never could display anyway.
- removed old wiiflow lite stub bin we no longer use.
- fixed arg boot of wii game ID on bootup.
2021-10-25 07:41:55 -05:00
Fledge68
2e3504d657 - update bug report issue template 2021-10-21 16:44:34 -05:00
Fledge68
043ff6b423 Trying out a bug report template 2021-10-13 17:02:09 -05:00
Fledge68
62126f6ecf - Now launching Neek2o via Crediar's ES_ImportBoot2 patch (thanks to Cyan) 2021-10-13 15:17:20 -05:00
Fledge68
30452862cc
Merge pull request #285 from RAVMN/patch-4
Update spanish.ini
2021-10-13 08:25:46 -05:00
Fledge68
bbba4c0ebc
Merge pull request #284 from Brawl345/patch10
Update German translation
2021-10-13 08:15:24 -05:00
Fledge68
08785c5ba2 - fixed the 480p pixel patch button in game settings menu. 2021-10-13 08:00:29 -05:00
Richard
798b77809f
Update spanish.ini
Deflicker is the term used in the spanish translation from Super Smash Bros Brawl, tehrefore I did not translate the word
2021-10-12 20:39:40 -03:00
8874a6b74b
Use better words for the deflicker settings 2021-10-12 09:31:10 +02:00
b9f2b2cc5a
Translate 'deflicker' with a better word 2021-10-12 09:07:36 +02:00
79e75d2b54
Update German translation up to commit ba74ae3ebdbc97f56c37151130ba2a29ec67aeee 2021-10-12 08:51:10 +02:00
Fledge68
ba74ae3ebd - i meant issue #283 2021-10-11 11:05:06 -05:00
Fledge68
26790615de - no longer modifying cheat txt file thanks to dimoks code in usb loader gx. #238 2021-10-11 10:51:50 -05:00
Fledge68
2a827f6ce3 - (wii and GC) changed prefer_usb to preferred_partition. defaults to -1 (not used), else 0(sd), 1(usb1), 2(usb2) etc...
- forgot this in last commit.
2021-10-07 17:05:06 -05:00
Fledge68
b2b8ef1601 Merge branch 'master' of https://github.com/Fledge68/WiiFlow_Lite 2021-10-07 17:03:25 -05:00
Fledge68
f9d2a87d5a - forgot in last commit - (wii and GC) changed prefer_usb to preferred_partition. defaults to -1 (not used), else 0(sd), 1(usb1), 2(usb2) etc... 2021-10-07 17:02:23 -05:00
Fledge68
7900ea9a93 - fixed the playing of All banners
- changed the order of bootup settings
- (wii and GC) changed prefer_usb to preferred_partition. defaults to -1 (not used), else 0(sd), 1(usb1), 2(usb2) etc...
- beta 9
2021-10-07 16:49:13 -05:00
Fledge68
1bc0279056 - fixed the playing of All banners
- changed the order of bootup settings
- beta 9
2021-10-07 16:38:32 -05:00
Fledge68
aa89fb6eb6 - minor fix for last commit. 2021-10-01 18:05:09 -05:00
Fledge68
d7e552fd44 - fixed a minor issue with wiiware/vc banners and gamesound.
- minor change to path manager.
2021-10-01 17:55:38 -05:00
Fledge68
a05d0b3e25 - updated ReadMe 2021-09-29 09:00:17 -05:00
Fledge68
a0eba4ea8f - beta 8
- WIIU vWii: added per wii/wiiware/vc game an option to set wiiu widescreen aspect ratio #258
2021-09-29 06:50:47 -05:00
Fledge68
afed7082f4 - HQ covers off by default now. 2021-09-27 09:54:16 -05:00
Fledge68
5bfb7fcd19 - added 'cheats_url=' to wiiflow_lite.ini under [GENERAL]. it will default to 'https://codes.rc24.xyz/txt.php?txt=%s' but at least now it is not hard coded and can easily be changed by the user if it needs to be in the future. 2021-09-27 07:10:22 -05:00
Fledge68
bdefb68ff6 - added ability to use custom private servers #261. add them to wiiflow_lite.ini like this:
[CUSTOM_SERVERS]
servers=AltWFC|NewWFC
AltWFC_url=zwei.moe
NewWFC_url=newwfc.xyz

the servers are separated by '|'.
use the server name before '_url='
2021-09-27 06:46:51 -05:00
Fledge68
5b7bb4f582
Merge pull request #279 from wiidev/master
Deflicker settings and video patching fixes
2021-09-25 18:04:27 -05:00
wiidev
61d7c5caf5 Add deflicker filter options 2021-09-25 20:00:02 +01:00
wiidev
caa01d15b4 Fix video mode patching 2021-09-25 20:00:02 +01:00
Fledge68
214c50c19a - v5.5.0 beta 6 2021-09-20 17:40:03 -05:00
Fledge68
26b467b665
Merge pull request #278 from eku/feature/multi_disc_support
Support for exclusion of certain multi disc/tape files
2021-09-20 11:48:14 -05:00
Erik Kunze
a768c2a76a With the new setting filename_skip_regex, which
contains a regular expression, files can be
excluded from the games list again. A typical
use case is the exclusion of all disks except
the first one in multidisk games.
2021-09-20 15:30:12 +02:00
Fledge68
3b1fdf06bd
Merge pull request #277 from eku/feature/accept_any_file_ending
Accept any file ending for filetypes
2021-09-19 18:07:07 -05:00
Erik Kunze
a5dd7d7df1 Compare strings case insensitive. 2021-09-17 14:43:03 +02:00
Erik Kunze
a349af207d Accept any file ending in IsFileSupported. It is
no longer limited to file type extension known from
DOS/Windows operating system.
2021-09-16 16:29:27 +02:00
Fledge68
9048d5fe57 - only add a multi disk entry to the cover list if .d1 is added before the extension and the filename includes 'disc' or 'disk'.
- properly fix scummvm.ini in apps/scummmvm/scummvm.ini
2021-09-15 11:45:06 -05:00
Fledge68
346f480b3d - a fix to only show one cover for multi disks emu games when using the rom database and not. issue #274. 2021-09-13 13:55:27 -05:00
Fledge68
01cb1b47fc - now using precompiled ext_loader.bin since it won't work after being compiled with ppc r39. use ppc r30 to r37 to compile it if you really need to. 2021-09-13 12:32:04 -05:00
Fledge68
6c32f57284 - properly updating libwolfssl since my compiler missed a lot. thanks blackb0x! 2021-09-06 17:33:21 -05:00
Fledge68
d27dc8baa4 - trying cache-2 2021-09-06 16:26:37 -05:00
Fledge68
1d1ab97e7c - try to fix build script 2021-09-06 15:30:37 -05:00
Fledge68
12d21fa0a7 - now compiled with devkitppc r39-2 (GCC 11) and libogc 2.3.1-1
- updated libwolfssl
- many thanks to blackb0x
2021-09-06 14:16:45 -05:00
Fledge68
ec5bd48a5b -compiled with ppc r37-4 and libogc 2.1.0 2021-09-03 16:57:46 -05:00
Fledge68
65df635c00 -one more time 2021-09-01 17:04:45 -05:00
Fledge68
096a2bd92d -again (apparently theres a difference between tabs and leading spaces) 2021-09-01 16:59:38 -05:00
Fledge68
8ba18d3b98 -another fix for main.yml 2021-09-01 16:54:44 -05:00
Fledge68
9838c16a5f - fix for main.yml 2021-09-01 15:59:41 -05:00
Fledge68
c90587576b - Now compiled with ppc r36 and libogc 1.8.24
- fix in menu.cpp for scummvm.ini in apps/scummvm folder
- v5.5.0 beta 1
2021-09-01 15:51:09 -05:00
Fledge68
85198bdeb8
Merge pull request #263 from QkeleQ10/master
Update Dutch translations
2021-06-07 06:14:17 -05:00
Fledge68
c5f4f0f8ca
Merge pull request #262 from pcjco/GroupCustomtitles
custom_titles.ini allowing to group same aliases for several plugins.
2021-06-07 06:14:01 -05:00
QkeleQ10
34950647e9 Update Dutch translations 2021-05-25 17:45:53 +02:00
pcjco
149e25ebe3 custom_titles.ini allowing to group same aliases for several plugins. 2021-05-11 22:57:08 +02:00
Fledge68
9350f51c3b -added themes_lite folder to github CL 2021-04-03 15:44:06 -05:00
Fledge68
13a8ac0926 try again 2021-04-03 15:29:18 -05:00
Fledge68
9193f9cdac delete screw up 2021-04-03 15:16:50 -05:00
Fledge68
f05d7ceffa - added theme_lite/coverflow folder and default.ini 2021-04-02 18:35:18 -05:00
Fledge68
2fee0c86d3 - oops forgot something else. hopefully this is it. 2021-04-02 18:16:21 -05:00
Fledge68
d8aa0714ec - oops forgot something. 2021-04-02 18:02:19 -05:00
Fledge68
9cea2f80a9 - updated code for v5.4.9 release 2021-04-02 17:46:34 -05:00
Fledge68
6ba7dac8d1
Merge pull request #247 from Leseratte10/master
Add Wiimmfi update code
2021-03-26 15:17:39 -05:00
Fledge68
352ff7fe3b
Merge pull request #253 from Brawl345/patch09
Update German translation
2021-03-26 15:06:28 -05:00
9fc354a79f
Update german translation to commit 9336f80737e69a27cf00abb331c39fa4868f2298 2021-03-16 21:36:33 +01:00
Florian Bach
e0eef718e3 Add Wiimmfi update code (0.7.5) 2021-03-14 15:40:19 +01:00
Fledge68
9336f80737
Merge pull request #241 from wiidev/master
Handle an OOM error when downloading
2021-02-05 17:15:33 -06:00
wiidev
63e9d31b74 Handle an OOM error when downloading 2021-02-05 19:51:15 +00:00
Fledge68
370d28f1fd Merge branch 'master' of https://github.com/Fledge68/WiiFlow_Lite 2021-01-05 14:02:20 -06:00
Fledge68
29d7100bf1 - added patch for error 23400 for CoD (Black Ops, Reflex, MW3) and Rock Band (3, The Beatles).
- added patch for Mario Kart Wii remote code execution vulnerability when not using wiimmfi.
(thanks to Blackb0x and Laseratte)
2021-01-05 14:01:03 -06:00
Fledge68
12a1c456ea
Merge pull request #233 from RAVMN/patch-3
Update spanish.ini
2020-12-23 12:23:58 -06:00
Fledge68
b4aa6564cb
Merge pull request #232 from DDinghoya/patch-21
Update korean.ini
2020-12-23 12:23:35 -06:00
Richard
39067bf186
Update spanish.ini 2020-12-14 20:52:17 -03:00
DDinghoya
b78eefe711
Update korean.ini 2020-12-13 19:52:17 +09:00
Fledge68
ff94e73be8 - beta 4
- added 'no SSL only' as a private server choice (issue #217). this allows you to patch games on your own with other wifi server url's besides wiimmfi.
- added private server as an option for nand wiiware games.
- added 480p pixel patch as option for nand wiiware/vc games. seems to only work if apploader is set to ON. loading via main dol is broke for the time being.
2020-11-28 18:20:39 -06:00
Fledge68
96a89ba708
Merge pull request #224 from KcrPL/master
Small fixes to the Polish translation
2020-11-19 18:25:03 -06:00
KcrPL
47b59f84e6 Small fixes to the Polish translation 2020-11-20 01:09:51 +01:00
Fledge68
29c25239c9
Merge pull request #222 from Leseratte10/master
Add Github CI
2020-11-19 17:22:12 -06:00
Florian Bach
3a7152b2bd Add Github CI 2020-11-19 14:31:52 +01:00
Fledge68
701d901513
Merge pull request #223 from KcrPL/master
Rewrite Polish translation
2020-11-18 17:23:00 -06:00
KcrPL
c4443e4a38 Add Polish help file 2020-11-17 18:00:00 +01:00
KcrPL
29da73ea80 Rewrite Polish translation and update it 2020-11-17 17:39:11 +01:00
Fledge68
ac4e5ddf1a - official added the clear CD case spine skin. In your plugin use casecolor=111111. may have to do a Reload Cache.
- fixed the page button of the source menu setup menu which sometimes said one too many pages.
2020-11-16 15:11:04 -06:00
Fledge68
c629021a44 - fix for music sample rates >48k. issue #221 2020-11-14 15:21:40 -06:00
Fledge68
e6beda957a - fixes for two mistakes in 5.4.7
- upped to 5.4 8
2020-11-11 13:24:29 -06:00
Fledge68
05222fb685
Merge pull request #216 from Brawl345/patch08
Update German translation
2020-11-11 12:41:34 -06:00
8bb9008067
Forgot a string 2020-11-01 00:48:34 +01:00
f3f675f9aa
Update German translation
As of commit e2d5ce35c6ef4f09e6706a9a1ae768b72eba3a29
2020-11-01 00:47:04 +01:00
Fledge68
e2d5ce35c6 Merge branch 'master' of https://github.com/Fledge68/WiiFlow_Lite 2020-10-28 18:36:49 -05:00
Fledge68
33c8248380 - minor change and official 5.4.7 2020-10-28 18:36:11 -05:00
Fledge68
1d8d5c58c5
Merge pull request #213 from RAVMN/patch-2
Update spanish.ini
2020-10-28 17:45:32 -05:00
Fledge68
3ceda222ea
Merge pull request #212 from DDinghoya/patch-20
Update korean.ini
2020-10-28 17:45:13 -05:00
Richard
fdec652cb4
Update spanish.ini 2020-10-20 18:24:41 -03:00
DDinghoya
80307ffe97
Update korean.ini 2020-10-20 19:45:16 +09:00
Fledge68
da479654ad
Merge pull request #211 from wiidev/master
Update wolfSSL and improve formatting
2020-10-19 08:41:57 -05:00
wiidev
0a53dbb34f Update wolfSSL and improve formatting 2020-10-17 18:29:03 +01:00
wiidev
d506c49d4f Fix warning when compiling 2020-10-17 15:46:44 +01:00
Fledge68
d93017e4ad - upped to beta 8
- mainly just some various code cleanups
- added 'Always show main icons' option page 14 of main settings. this prevents the main screen icons from hiding.
2020-10-15 14:46:28 -05:00
Fledge68
c2007e3421
Merge pull request #208 from DDinghoya/patch-19
Update korean.ini
2020-10-08 17:39:18 -05:00
Fledge68
879c9ade08
Merge pull request #207 from unresolvedsymbol/master
Use RiiConnect24 geckocodes archive
2020-10-08 17:38:52 -05:00
DDinghoya
a6c99bf5db
Update korean.ini 2020-10-07 23:02:23 +09:00
unresolvedsymbol
9362fd9789 Use RiiConnect24 geckocodes archive 2020-10-05 15:27:02 -05:00
Fledge68
ac7b60c9c2
Merge pull request #205 from wiidev/master
Update wolfSSL, picohttpparser & clean up code
2020-09-27 17:30:26 -05:00
wiidev
c496ef0dee Update wolfSSL, picohttpparser & clean up code 2020-09-26 22:30:40 +01:00
Fledge68
4dcca18b32 - upped beta 7 2020-09-25 06:39:10 -05:00
Fledge68
1595356f59 - fixed the Source Menu page button when hiding buttons. the count was off by one so sometimes the page button said there was another page when there really wasn't.
- fixed a minor issue when changing a plugins rom dir but then exiting the source menu via B button without selecting a source, it wouldn't reload the current coverflow but now it does.
- now when you have only the front cover image wiiflow will use that platform's custom blank cover image for the spine and back of the cover.
- made source menu setup menu's more noticable when you switch from select a source to selecting a plugin and back. before it was hard to tell you had moved to a new menu cause they look nearly identical.
2020-09-25 06:19:03 -05:00
Fledge68
ef59eccaca
Merge pull request #202 from wiidev/master
Fix Wii game booting on vWii - issue #192
2020-09-21 05:39:19 -05:00
wiidev
5b6a325546 Fix Wii game booting on vWii 2020-09-18 23:07:03 +01:00
Fledge68
2405ad2aab
Merge pull request #201 from wiidev/master
Use MEM2 and improve formatting
2020-09-14 15:21:40 -05:00
wiidev
c16b3adea9 Use MEM2 and improve formatting 2020-09-14 18:23:54 +01:00
Fledge68
f5496be239
Merge pull request #200 from wiidev/master
Add proxy support, fix timeouts & update wolfSSL
2020-09-12 17:25:09 -05:00
wiidev
8abd33fb28 Adjusted credentials char array size 2020-09-07 22:14:43 +01:00
wiidev
242b72add6 Proxy credentials are supported 2020-09-07 22:11:42 +01:00
wiidev
541836a643 Adjusted the proxy char array sizes 2020-09-07 22:08:52 +01:00
wiidev
a80d629859 Add proxy support, fix timeouts & update wolfSSL 2020-09-07 21:27:42 +01:00
Fledge68
144e7669ed - fixed source menu setup linking source buttons to plugins
- cleaned up gui code a tiny bit.
- beta 5
2020-09-07 06:26:12 -05:00
Fledge68
9a8a752e6f v5.4.7 beta 4
- added wiiflow/covers/homebrew_small folder so when using homebrew smallbox mode you can use your own custom covers instead of the apps icon.png
- fixed music resample to 48k option on main settings to not crash wiiflow if only one song file in wiiflow music folder.
- fixed displaying music title when you only have one music file in wiiflow music folder.
- fixed saving and loading enabled plugins upon exit and startup. This stops the "no plugins selected" message upon returning to wiiflow when you previously used the Select Plugin Menu.
- fixed custom backgrounds after using the Select Plugin Menu.
- fixed the Source Menu to display source buttons properly when switching tiers or pages.
- fixed refreshing Source Menu buttons after using the options menu to hide them.
2020-08-31 18:23:52 -05:00
Fledge68
e0445a0cc0 - added source menu setup via Home button while view source menu. Setup includes hide buttons, link buttons to plugins, and set roms path of plugins.
- organized main settings pg 10 thru 13 better.
2020-08-24 17:58:09 -05:00
Fledge68
493f62f295 - changed a few debug prints. 2020-08-23 18:09:13 -05:00
Fledge68
dc967db949 - added some texure cleanups 2020-08-13 18:29:43 -05:00
Fledge68
02a7bb4846 - reverted one of my recent MEM2_free changes. 2020-08-13 16:21:29 -05:00
Fledge68
2800366e7b - very minor code clean up 2020-07-20 08:07:41 -05:00
Fledge68
4c804ffe17 - fix for issue #190 apply game settings to autoboot game. 2020-07-19 17:10:54 -05:00
Fledge68
da19f5b414 - modified plugin code a little. biggest difference is now it no longer uses [PLUGINS_ENABLED] in wiiflow_lite.ini. 2020-07-17 15:23:42 -05:00
Fledge68
ef22015f8d - fixed plugin system to handle more than 128 plugins. 2020-07-11 15:31:14 -05:00
Fledge68
a9828f0dc5 - cleaned up code for game config load. 2020-06-26 15:16:21 -05:00
Fledge68
ca35893058 - removed the negative shift warning when compiling wiiflow game booter. 2020-06-25 18:31:51 -05:00
Fledge68
62e8638260 - removed programmers notepad project files from the remote repository. but i still use it locally. 2020-06-25 18:17:11 -05:00
Fledge68
7a3e7db40d - changed a lot of free's to MEM2_free even though the way Fix94 wrote his mem manager, using free is fine too. but this does help me see what is using MEM2.
- cleaned up error handling in PNGU.
2020-06-25 18:11:58 -05:00
Fledge68
47d417cdf4
Merge pull request #186 from RAVMN/patch-1
Minor changes to spanish.ini
2020-06-25 18:09:32 -05:00
Fledge68
2489516685
Merge pull request #185 from CrewMdk/patch-9
Updated spanish language translation
2020-06-25 18:03:46 -05:00
Fledge68
ddea1f1e79
Merge pull request #184 from DDinghoya/patch-17
Update korean.ini
2020-06-25 18:03:29 -05:00
CrewMdk
b1b702d039
Updated spanish language translation 2020-06-07 03:59:48 -05:00
Fledge68
0f8a3e30d8 - fixed devolution for usb only users 2020-06-05 18:58:33 -05:00
DDinghoya
7b2f0293b5
Update korean.ini 2020-06-01 21:56:35 +09:00
Fledge68
bca9764f4b - cleaned up libsicksaxis code a little to make it easier for me to understand what's going on. 2020-05-27 15:18:38 -05:00
Fledge68
64cf5a6858 - fixed plugin dol path that was broken in last release.
- added option to upsample/resample music audio to 48khz. code taken from wiixplorer thanks to dimok.
2020-05-25 17:17:50 -05:00
Richard
947a4461c7
Minor changes to spanish.ini
didn't know the project migrated from sourceforge, here is easier for me to keep contributing n.n

Some of the strings were changed to keep style consistency. The last two strings were changed to be gender neutral while mantainign a direct aproach to the user
2020-05-17 01:01:43 -04:00
Fledge68
0263a20778 - fix for setting game IOS (broken in 5.4.5) 2020-05-16 17:53:34 -05:00
Fledge68
b0778217bb - french language update by damian
- brazilian language update by tico (was included in release but never officially added to source)
- minor change in homebrew boot
2020-05-11 09:17:47 -05:00
Fledge68
f10e48dc1b
Merge pull request #182 from wiidev/master
Optimize the splash and wait images
2020-05-09 11:21:37 -05:00
wiidev
bce2b21ca9 Optimize the splash and wait images 2020-05-09 06:15:14 +01:00
Fledge68
6dee55f9cf
Merge pull request #181 from wiidev/master
Update wolfSSL
2020-05-06 14:38:22 -05:00
Fledge68
f71bbfdb06
Merge pull request #180 from DDinghoya/patch-16
Update korean.ini
2020-05-06 14:36:43 -05:00
DDinghoya
f944c2b569
Update korean.ini 2020-05-06 19:50:31 +09:00
wiidev
13cbaf762f Update wolfSSL 2020-05-06 00:15:21 +01:00
Fledge68
4ec575a450
Merge pull request #179 from wiidev/master
Only patch PAL Wii games when using progressive
2020-05-04 17:02:39 -05:00
wiidev
6e580a7dbd Only patch PAL Wii games when using progressive 2020-05-04 21:31:00 +01:00
Fledge68
3a3d1c46a1 - fixed sourceflow on start to remove quick flash of green screen. 2020-05-04 06:31:25 -05:00
Fledge68
1f5c18fe65 - updated french language thanks to gbatemp member damien-la-critique 2020-05-01 17:47:54 -05:00
Fledge68
5e328976e5 - fixed cache covers progress bar to not show if a plugin has no roms.
- fixed cache covers progress bar to not show when viewing sourceflow and its tiers unless wiiflow detects that a cached cover is missing.
- fixed source on start to only work if their is a source menu.
- cleaned up some of game cios loading.
2020-05-01 17:32:23 -05:00
Fledge68
f90b82ec9f - sourceflow no longer shows cache covers progress bar unless 1 or more covers need to be cached.
- hopefully removed split second green screen when sourceflow on startup is used.
- fixed startup for wiivc (although untested).
- made changes to cios loading on startup.
- fixed if wiiflow fails on startup to not exit to HBC unless booted from HBC.
2020-04-28 18:03:24 -05:00
Fledge68
0d9b58609c - fixed a potential issue if using the source select icon on main screen with no source menu. 2020-04-20 10:37:47 -05:00
Fledge68
1724046bf3 - fixed homebrew icon pngs with transparency correctly now. no more blank black covers. 2020-04-20 08:16:18 -05:00
Fledge68
ab898c98b5
Merge pull request #168 from wiidev/master
Fix video mode patching
2020-04-17 15:21:23 -05:00
wiidev
ea7987f0ae Fix video mode patching
Bug reported @ https://gbatemp.net/posts/9015326
2020-04-17 06:11:25 +01:00
Fledge68
0a14c3a05c - updated .gitignore 2020-04-15 16:55:55 -05:00
Fledge68
729bc21a8f - fixed launching GC game with devolution. 2020-04-15 12:25:31 -05:00
Fledge68
601212e2f6
Merge pull request #166 from DDinghoya/patch-15
Update korean.ini
2020-04-15 12:06:38 -05:00
Fledge68
19fa9c3465
Merge pull request #165 from wiidev/master
A few more improvements
2020-04-15 12:06:18 -05:00
wiidev
4da7f23e9a Check for incomplete downloads before saving
Downloads should only fail like this is if your WiFi signal is poor, your internet connection is awful or the server is experiencing issues.
2020-04-14 21:40:38 +01:00
DDinghoya
0d3b1d8799
Update korean.ini 2020-04-14 13:43:00 +09:00
wiidev
750614e055 Update english.ini 2020-04-14 03:41:57 +01:00
Fledge68
d0e1dc8d45 - added 'no games found in {roms folder path}' if wiiflow doesn't find any roms for a plugin. This will let you know where wiiflow and the plugin are looking for the roms. 2020-04-12 18:24:26 -05:00
Fledge68
04dbf6bfa9 - fix for issue #163. deleting wbfs ext wii games. 2020-04-12 18:15:52 -05:00
Fledge68
e63d49cadd
Merge pull request #164 from wiidev/master
Various improvements and fixes
2020-04-12 16:19:20 -05:00
wiidev
28ae5daf18 Covers and banners download faster 2020-04-12 20:27:47 +01:00
wiidev
4d6f75112b Improved file formatting 2020-04-12 20:25:10 +01:00
wiidev
a85d33ffd7 Use the memory manager for downloads 2020-04-12 19:39:10 +01:00
wiidev
1ce62ffb75 Optimize images 2020-04-12 19:35:57 +01:00
wiidev
9ad0c6da08 Support paletted images 2020-04-12 19:34:05 +01:00
wiidev
0c8477548c Prevent crash caused by debug logging & gamercards 2020-04-12 19:33:31 +01:00
wiidev
6113355561 RiiTag should use HTTPS 2020-04-12 19:03:51 +01:00
Fledge68
a0ba54251d
Merge pull request #158 from CrewMdk/patch-7
Updated spanish language translation
2020-04-08 12:08:35 -05:00
Fledge68
894a1cd2c1
Merge pull request #159 from CrewMdk/patch-8
Updated english language translation
2020-04-08 12:08:20 -05:00
Fledge68
ee14187e2d - fixed missing cache covers for real nand channels if you add covers manually and do reload cache. Thanks blackb0x!
- fixed crash when pressing 1/x or 2/y buttons (change coverflow layout) when no covers are loaded.
- fixed hiding the wait loading animation when using source menu on start.
- fixed exiting source menu on start via B button so covers show properly.
- fixed using homebrew icon.png's with transparency as covers for smallbox by restoring some old code I didn't understand. But ... sometimes the icon.png textures (.wfc) are saved as empty black boxes.
- if you get an empty black box for your homebrew cover image you can select the cover and click the 'X' delete icon. it will not delete your homebrew app but will instead delete the cover texture file (.wfc). Then you can do reload cache and hopefully your cover will be fixed.
- tried fixing cacheing covers after downloading them. works sometimes. It's a low free mem2 error if using rhapsodii shima theme and having a lot of games. if covers do not appear after downloading then i suggest rebooting wiiflow and doing reload cache first thing or switch to wiiflow's default theme and then download the covers and then switch back to rhapsodii shima theme.
2020-04-08 12:06:21 -05:00
CrewMdk
289321c1ec
Updated spanish language translation 2020-04-06 13:00:41 -05:00
CrewMdk
4d0d1b2732
Update spanish.ini 2020-04-03 14:01:06 -06:00
CrewMdk
0acc2cf13e
Updated spanish language translation 2020-04-01 14:53:05 -06:00
CrewMdk
26617d2fbe
Updated english language translation 2020-04-01 14:51:36 -06:00
CrewMdk
c933d378be
Updated spanish language translation 2020-04-01 14:32:17 -06:00
487 changed files with 47975 additions and 29444 deletions

31
.github/ISSUE_TEMPLATE/bug_report.md vendored Normal file
View File

@ -0,0 +1,31 @@
---
name: Bug report
about: Create a report to help us improve
title: ''
labels: ''
assignees: ''
---
**Describe the bug**
A clear and concise description of what the bug is.
**To Reproduce**
Steps to reproduce the behavior:
1. Go to '...'
2. Click on '....'
3. Scroll down to '....'
4. See error
**What version of WiiFlow Lite**
v5.4.9
v5.5.0 beta 10
**On Wii or Wii U vWii**
Wii
**Screenshots**
If applicable, add screenshots to help explain your problem.
**Additional context**
Add any other context about the problem here.

62
.github/workflows/main.yml vendored Normal file
View File

@ -0,0 +1,62 @@
name: Build binaries
on: [push, pull_request]
jobs:
build:
runs-on: ubuntu-latest
timeout-minutes: 20
steps:
- uses: actions/checkout@v3
- name: Cache
id: cache-1
uses: actions/cache@v3
with:
path: cache
key: ${{ runner.os }}-cache-1
- name: Download devkitPPC r42.2-1, libogc 2.4.0 and required tools
if: steps.cache-1.outputs.cache-hit != 'true'
# general-tools is needed for bin2s and gamecube-tools is needed for elf2dol
run: |
mkdir cache && cd cache
wget "https://wii.leseratte10.de/devkitPro/file.php/devkitPPC-r42.2-1-linux_x86_64.pkg.tar.zst"
wget "https://wii.leseratte10.de/devkitPro/file.php/devkitppc-rules-1.1.1-1-any.pkg.tar.xz"
wget "https://wii.leseratte10.de/devkitPro/file.php/libogc-2.4.0-1-any.pkg.tar.zst"
wget "https://wii.leseratte10.de/devkitPro/file.php/general-tools-1.2.0-2-linux_x86_64.pkg.tar.xz"
wget "https://wii.leseratte10.de/devkitPro/file.php/gamecube-tools-1.0.3-1-linux_x86_64.pkg.tar.xz"
cd ..
- name: Extract downloaded files
# general-tools is needed for bin2s and gamecube-tools is needed for elf2dol
run: |
tar -xf cache/devkitPPC-r42.2-1-linux_x86_64.pkg.tar.zst --strip-components=1
tar -xf cache/devkitppc-rules-1.1.1-1-any.pkg.tar.xz --strip-components=1
tar -xf cache/libogc-2.4.0-1-any.pkg.tar.zst --strip-components=1
tar -xf cache/general-tools-1.2.0-2-linux_x86_64.pkg.tar.xz --strip-components=1
tar -xf cache/gamecube-tools-1.0.3-1-linux_x86_64.pkg.tar.xz --strip-components=1
- name: Compile
run: |
PATH=$(pwd)/devkitpro/devkitPPC/bin:$PATH DEVKITPPC=$(pwd)/devkitpro/devkitPPC DEVKITPRO=$(pwd)/devkitpro make
- name: Package
run: |
cp -r wii/apps apps
mkdir -p apps/wiiflow/
cp -r out/bins apps/wiiflow/bins
cp -r out/imgs apps/wiiflow/imgs
cp out/boot.dol apps/wiiflow/
mkdir -p wiiflow
cp -r wii/wiiflow/Languages wiiflow/languages
cp -r wii/wiiflow/themes_lite wiiflow/themes_lite
echo "sha=$(git rev-parse --short=7 HEAD)" >> $GITHUB_ENV
- name: Upload binaries
uses: actions/upload-artifact@v3
with:
name: wiiflow_lite_${{ env.sha }}
path: |
apps
wiiflow

5
.gitignore vendored
View File

@ -1,3 +1,8 @@
*.d
*.o
*.elf
*.map
/source/loader/alt_ios_gen.h
/wiiflow.pnproj /wiiflow.pnproj
/wiiflow.pnps /wiiflow.pnps
/build /build

View File

@ -8,12 +8,6 @@ all:
@mv -u $(CURDIR_TMP)/resources/app_booter/app_booter.bin \ @mv -u $(CURDIR_TMP)/resources/app_booter/app_booter.bin \
$(CURDIR_TMP)/out/bins/app_booter.bin $(CURDIR_TMP)/out/bins/app_booter.bin
@echo Make WiiFlow Loader
@$(MAKE) --no-print-directory -C $(CURDIR_TMP)/resources/extldr \
-f $(CURDIR_TMP)/resources/extldr/Makefile
@mv -u $(CURDIR_TMP)/resources/extldr/extldr.bin \
$(CURDIR_TMP)/out/bins/ext_loader.bin
@echo Make WiiFlow Booter @echo Make WiiFlow Booter
@$(MAKE) --no-print-directory -C $(CURDIR_TMP)/resources/wiiflow_game_booter \ @$(MAKE) --no-print-directory -C $(CURDIR_TMP)/resources/wiiflow_game_booter \
-f $(CURDIR_TMP)/resources/wiiflow_game_booter/Makefile -f $(CURDIR_TMP)/resources/wiiflow_game_booter/Makefile
@ -28,10 +22,6 @@ clean:
@$(MAKE) --no-print-directory -C $(CURDIR_TMP)/resources/app_booter \ @$(MAKE) --no-print-directory -C $(CURDIR_TMP)/resources/app_booter \
-f $(CURDIR_TMP)/resources/app_booter/Makefile clean -f $(CURDIR_TMP)/resources/app_booter/Makefile clean
@echo Cleanup WiiFlow Loader
@$(MAKE) --no-print-directory -C $(CURDIR_TMP)/resources/extldr \
-f $(CURDIR_TMP)/resources/extldr/Makefile clean
@echo Cleanup WiiFlow Booter @echo Cleanup WiiFlow Booter
@$(MAKE) --no-print-directory -C $(CURDIR_TMP)/resources/wiiflow_game_booter \ @$(MAKE) --no-print-directory -C $(CURDIR_TMP)/resources/wiiflow_game_booter \
-f $(CURDIR_TMP)/resources/wiiflow_game_booter/Makefile clean -f $(CURDIR_TMP)/resources/wiiflow_game_booter/Makefile clean

View File

@ -53,10 +53,17 @@ ios := 249
#--------------------------------------------------------------------------------- #---------------------------------------------------------------------------------
# options for code generation # options for code generation
#--------------------------------------------------------------------------------- #---------------------------------------------------------------------------------
CFLAGS = -g -ggdb -O2 -Wall -Wextra $(MACHDEP) $(INCLUDE) -D_GNU_SOURCE -DHAVE_CONFIG_H FALSE_POSITIVES := -Wno-array-bounds -Wno-stringop-overflow -Wno-stringop-overread
CXXFLAGS = $(CFLAGS) CFLAGS = -g -ggdb -O2 -Wall -Wno-multichar -Wno-address-of-packed-member -Wextra $(FALSE_POSITIVES) $(MACHDEP) $(INCLUDE) -D_GNU_SOURCE -DHAVE_CONFIG_H
CXXFLAGS = $(CFLAGS) -std=c++20
LDFLAGS = -g -ggdb $(MACHDEP) -Wl,-Map,$(notdir $@).map,--section-start,.init=0x80620000,-wrap,malloc,-wrap,free,-wrap,memalign,-wrap,calloc,-wrap,realloc,-wrap,malloc_usable_size,-wrap,wiiuse_register LDFLAGS = -g -ggdb $(MACHDEP) -Wl,-Map,$(notdir $@).map,--section-start,.init=0x80620000,-wrap,malloc,-wrap,free,-wrap,memalign,-wrap,calloc,-wrap,realloc,-wrap,malloc_usable_size,-wrap,wiiuse_register
ifeq ($(GITHUB_ACTIONS),true)
SHA = $(GITHUB_SHA)
CFLAGS += -DCOMMITHASH='"$(shell echo "$(SHA)" | cut -c 1-8)"'
CXXFLAGS += -DCOMMITHASH='"$(shell echo "$(SHA)" | cut -c 1-8)"'
endif
ifeq ($(BUILDMODE),channel) ifeq ($(BUILDMODE),channel)
CFLAGS += -DFULLCHANNEL CFLAGS += -DFULLCHANNEL
CXXFLAGS += -DFULLCHANNEL CXXFLAGS += -DFULLCHANNEL
@ -65,13 +72,14 @@ endif
#--------------------------------------------------------------------------------- #---------------------------------------------------------------------------------
# any extra libraries we wish to link with the project # any extra libraries we wish to link with the project
#--------------------------------------------------------------------------------- #---------------------------------------------------------------------------------
LIBS := -lwolfssl -lcustomfat -lcustomntfs -lcustomext2fs -lpng -lturbojpeg -lm -lz -lwiiuse -lwupc -lwiidrc -lbte -lasnd -logc -lfreetype -lvorbisidec -lmad -lsicksaxis LIBS := -lwolfssl -lcustomfat -lcustomntfs -lcustomext2fs -lpng -lturbojpeg -lm -lz -lwiiuse -lbte -lwupc -lwiidrc -lsicksaxis -lasnd -lmad -lvorbisidec -logg -lfreetype -lbz2 -logc
#--------------------------------------------------------------------------------- #---------------------------------------------------------------------------------
# list of directories containing libraries, this must be the top level containing # list of directories containing libraries, this must be the top level containing
# include and lib # include and lib
#--------------------------------------------------------------------------------- #---------------------------------------------------------------------------------
LIBDIRS := $(CURDIR)/portlibs LIBDIRS := $(CURDIR)/portlibs
#--------------------------------------------------------------------------------- #---------------------------------------------------------------------------------
# no real need to edit anything past this point unless you need to add additional # no real need to edit anything past this point unless you need to add additional
# rules for different file extensions # rules for different file extensions
@ -121,14 +129,13 @@ export OFILES := $(CPPFILES:.cpp=.o) $(CFILES:.c=.o) \
#--------------------------------------------------------------------------------- #---------------------------------------------------------------------------------
export INCLUDE := $(foreach dir,$(INCLUDES),-I$(CURDIR)/$(dir)) \ export INCLUDE := $(foreach dir,$(INCLUDES),-I$(CURDIR)/$(dir)) \
$(foreach dir,$(LIBDIRS),-I$(dir)/include) \ $(foreach dir,$(LIBDIRS),-I$(dir)/include) \
-I$(CURDIR)/$(BUILD) -I$(LIBOGC_INC) \ -I$(CURDIR)/$(BUILD) -I$(LIBOGC_INC)
-I$(PORTLIBS)/include
#--------------------------------------------------------------------------------- #---------------------------------------------------------------------------------
# build a list of library paths # build a list of library paths
#--------------------------------------------------------------------------------- #---------------------------------------------------------------------------------
export LIBPATHS := $(foreach dir,$(LIBDIRS),-L$(dir)/lib) \ export LIBPATHS := $(foreach dir,$(LIBDIRS),-L$(dir)/lib) \
-L$(CURDIR)/source/libwolfssl/ -L$(LIBOGC_LIB) -L$(PORTLIBS)/lib -L$(CURDIR)/source/libwolfssl -L$(LIBOGC_LIB)
export OUTPUT := $(CURDIR)/out/$(TARGET) export OUTPUT := $(CURDIR)/out/$(TARGET)
.PHONY: $(BUILD) all clean .PHONY: $(BUILD) all clean
@ -147,8 +154,9 @@ all:
clean: clean:
@echo clean ... @echo clean ...
@rm -fr $(BUILD) $(OUTPUT).elf $(OUTPUT).dol \ @rm -fr $(BUILD) $(OUTPUT).elf $(OUTPUT).dol \
$(CURDIR)/source/loader/alt_ios_gen.h $(CURDIR)/out/bins/ext_loader.bin \ $(CURDIR)/source/loader/alt_ios_gen.h \
$(CURDIR)/out/bins/ext_booter.bin $(CURDIR)/out/bins/app_booter.bin $(CURDIR)/out/bins/ext_booter.bin \
$(CURDIR)/out/bins/app_booter.bin
#--------------------------------------------------------------------------------- #---------------------------------------------------------------------------------
else else

View File

@ -4,9 +4,6 @@ My mod of the Wii USB Loader WiiFlow
## Description ## Description
WiiFlow Lite is a wii homebrew app used to display and launch your games and apps stored on a USB device or SD card plugged into a Wii or Wii U in Wii mode. The games and apps are displayed in cover flow style display. WiiFlow Lite is a wii homebrew app used to display and launch your games and apps stored on a USB device or SD card plugged into a Wii or Wii U in Wii mode. The games and apps are displayed in cover flow style display.
## Compiling
WiiFlow Lite is currently compiled using DevkitPro PPC r30 and Libogc 1.8.19. I recommend getting Tortoise Git to checkout the WiiFlow Lite repository.
## Installing ## Installing
As of v5.2.0 WiiFlow Lite will simply be a replacement for WiiFlow. Put it in apps/wiiflow and use wiiflow forwarder's to launch it via the wii system menu. forwarders can be found on wiiflowiki4. for previous wiiflow lite users, sorry but you must uninstall your wiiflow lite forwarder and replace it with a wiiflow forwarder. As of v5.2.0 WiiFlow Lite will simply be a replacement for WiiFlow. Put it in apps/wiiflow and use wiiflow forwarder's to launch it via the wii system menu. forwarders can be found on wiiflowiki4. for previous wiiflow lite users, sorry but you must uninstall your wiiflow lite forwarder and replace it with a wiiflow forwarder.
@ -16,9 +13,7 @@ Simply download the latest release and extract it to your apps/wiiflow folder on
To start WiiFlow Lite you will need the Homebrew Channel or a WiiFlow forwarder channel installed on your Wii or vWii system menu. To start WiiFlow Lite you will need the Homebrew Channel or a WiiFlow forwarder channel installed on your Wii or vWii system menu.
## Themes ## Themes
Currently only Carbonik Abz and Rhapsodii themes are compatible with WiiFlow Lite. Other older wiiflow themes need to be updated to work properly with WFL. Currently only Rhapsodii and Rhapsodii Shima themes are compatible with WiiFlow Lite. Other older wiiflow themes need to be updated to work properly with WFL.
Carbonik Abz is included in the WiiFlow lite download.
Rhapsodii made by Hakaisha is a new theme designed for wiiflow lite. find it here - (https://gbatemp.net/threads/wiiflow-lite-theme-rhapsodii.511833/) Rhapsodii made by Hakaisha is a new theme designed for wiiflow lite. find it here - (https://gbatemp.net/threads/wiiflow-lite-theme-rhapsodii.511833/)
@ -27,6 +22,10 @@ Other wiiflow lite themes can be found on the wiki linked below. but they need t
## Useful Links ## Useful Links
[WiiFlow Lite GBATemp thread](https://gbatemp.net/threads/wiiflow-lite.422685/) [WiiFlow Lite GBATemp thread](https://gbatemp.net/threads/wiiflow-lite.422685/)
[WiiFlow Wiki](https://sites.google.com/site/wiiflowiki4/) [WiiFlow Wiki](https://web.archive.org/web/20220414124727/https://sites.google.com/site/wiiflowiki4/)
[Newer Wiki WIP](https://sites.google.com/view/wiiflow-wiki/welcome)
[Github Wiki](https://github.com/Fledge68/WiiFlow_Lite/wiki)
[Old Sourceforge Project Repository](https://sourceforge.net/projects/wiiflow-lite/) [Old Sourceforge Project Repository](https://sourceforge.net/projects/wiiflow-lite/)

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.4 KiB

BIN
data/images/wait_01.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.0 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.4 KiB

BIN
data/images/wait_02.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.4 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.4 KiB

BIN
data/images/wait_03.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.6 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.3 KiB

BIN
data/images/wait_04.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.8 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.3 KiB

BIN
data/images/wait_05.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.9 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.3 KiB

BIN
data/images/wait_06.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.0 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.3 KiB

BIN
data/images/wait_07.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.1 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.2 KiB

BIN
data/images/wait_08.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.6 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 26 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 24 KiB

Binary file not shown.

View File

@ -1,172 +0,0 @@
Files marked as "GPL" can be used without any constraint.
Files marked as GPL require that you respect one of the GPL : http://www.gnu.org/licenses/
All the original code in WiiFlow is in Public Domain (or WTFPL if GPL is not possible)
source/
| File | Comment | Lic | Original author(s) | Project where the original code is
|-----------------|------------|------|----------------------------|------------------------------------
| boxmesh.cpp | | GPL | | WiiFlow 1.1
| boxmesh.hpp | | GPL | | WiiFlow 1.1
| cheat.cpp | | GPL | | WiiFlow 1.1
| cheat.hpp | | GPL | | WiiFlow 1.1
| config.cpp | | GPL | | WiiFlow 1.1
| config.hpp | | GPL | | WiiFlow 1.1
| cursor.cpp | | GPL | | WiiFlow 1.1
| cursor.hpp | | GPL | | WiiFlow 1.1
| dns.c | | GPL | PaulWagener | WiiEarth
| dns.h | | GPL | PaulWagener | WiiEarth
| FreeTypeGX.cpp | Modified | GPL | Armin Tamzarian | http://code.google.com/p/freetypegx/
| FreeTypeGX.hpp | Modified | GPL | Armin Tamzarian | http://code.google.com/p/freetypegx/
| gui.cpp | | GPL | | WiiFlow 1.1
| gui.hpp | | GPL | | WiiFlow 1.1
| http.c | Modified | GPL | PaulWagener | WiiEarth
| http.h | Modified | GPL | PaulWagener | WiiEarth
| main.cpp | | GPL | | WiiFlow 1.1
| mem2.cpp | | GPL | | WiiFlow 1.1
| mem2.hpp | | GPL | | WiiFlow 1.1
| mem2alloc.cpp | | GPL | | WiiFlow 1.1
| mem2alloc.hpp | | GPL | | WiiFlow 1.1
| Metaphrasis.cpp | Modified | GPL | Armin Tamzarian | http://code.google.com/p/metaphrasis/
| Metaphrasis.h | Modified | GPL | Armin Tamzarian | http://code.google.com/p/metaphrasis/
| objalloc.cpp | | GPL | | WiiFlow 1.1
| objalloc.hpp | | GPL | | WiiFlow 1.1
| oggplayer.c | Modified | GPL | Hermes | Modified version from LibWiiGui
| oggplayer.h | Modified | GPL | Hermes | Modified version from LibWiiGui
| pngu.c | Modified | ? | | http://frontier-dev.net
| pngu.h | Modified | ? | | http://frontier-dev.net
| smartalloc.cpp | | GPL | | WiiFlow 1.1
| smartptr.hpp | | GPL | | WiiFlow 1.1
| sound.cpp | | GPL | | WiiFlow 1.1
| sound.hpp | | GPL | | WiiFlow 1.1
| text.cpp | | GPL | | WiiFlow 1.1
| text.hpp | | GPL | | WiiFlow 1.1
| texture.cpp | | GPL | | WiiFlow 1.1 Optimization : "Real-Time DXT Compression" by J.M.P. van Waveren (c) 2006 Id Software, Inc.
| texture.hpp | | GPL | | WiiFlow 1.1
| vector.hpp | | GPL | | WiiFlow 1.1
| video.cpp | | GPL | | WiiFlow 1.1
| video.hpp | | GPL | | WiiFlow 1.1
| wstringEx.cpp | | GPL | | WiiFlow 1.1 R8
| wstringEx.hpp | | GPL | | WiiFlow 1.1 R8
--------------------------------------------------------------------------------------------------------
source/data/
| File | Comment | Lic | Original author(s) | Project where the original code is
|-----------------|------------|------|----------------------------|------------------------------------
| *.c | Generated | | | WiiFlow 1.1
--------------------------------------------------------------------------------------------------------
source/loader/
| File | Comment | Lic | Original author(s) | Project where the original code is
|-----------------|------------|------|----------------------------|------------------------------------
| alt_ios.c | Modified | GPL | Hermes | uLoader 3.0C
| alt_ios.h | Modified | GPL | Hermes | uLoader 3.0C
| apploader.c | Modified | GPL | Waninkoko, WiiPower | USB Loader 1.5, NeoGamma
| apploader.h | Modified | GPL | Waninkoko, WiiPower | USB Loader 1.5, NeoGamma
| dip_plugin_2.c | | GPL | Hermes | uLoader
| dip_plugin_2.h | | GPL | Hermes | uLoader
| dip_plugin_3.c | | GPL | Hermes | uLoader 2.6
| dip_plugin_3.h | | GPL | Hermes | uLoader 2.6
| dip_plugin_4.c | | GPL | Hermes | uLoader 3.1
| dip_plugin_4.h | | GPL | Hermes | uLoader 3.1
| disc.c | Modified | GPL | Kwiirk, Waninkoko, Hermes | YAL, USB Loader 1.5, uLoader 3.0C
| disc.h | Modified | GPL | Kwiirk, Waninkoko, Hermes | YAL, USB Loader 1.5, uLoader 3.0C
| ehcmodule_2.c | | GPL | Kwiirk?, Hermes | uLoader
| ehcmodule_2.h | | GPL | Kwiirk?, Hermes | uLoader
| ehcmodule_3.c | | GPL | Kwiirk?, Hermes | uLoader 2.6
| ehcmodule_3.h | | GPL | Kwiirk?, Hermes | uLoader 2.6
| ehcmodule_4.c | | GPL | Kwiirk?, Hermes | uLoader 3.1
| ehcmodule_4.h | | GPL | Kwiirk?, Hermes | uLoader 3.1
| fat.c | | GPL | | WiiFlow 1.1
| fat.h | | GPL | | WiiFlow 1.1
| fwrite_patch.h | | GPL | Nuke, Brkirch | http://code.google.com/p/usbgecko/
| geckomenu.h | | GPL | Nuke, Brkirch | http://code.google.com/p/usbgecko/
| kenobiwii.c | | GPL | Nuke, Brkirch | http://code.google.com/p/usbgecko/
| load_dol.c | | GPL | Shagkur? | ftpii, uLoader 3.0C
| load_dol.h | | GPL | Shagkur? | ftpii, uLoader 3.0C
| mload.c | | GPL | Hermes | uLoader 3.0C
| mload.h | | GPL | Hermes | uLoader 3.0C
| partition.c | | GPL | Waninkoko? | USB Loader 1.5
| partition.h | | GPL | Waninkoko? | USB Loader 1.5
| patchcode.c | Modified | GPL | Nuke, Brkirch | http://code.google.com/p/usbgecko/
| patchcode.h | Modified | GPL | Nuke, Brkirch | http://code.google.com/p/usbgecko/
| patchhook.S | | GPL | Nuke, Brkirch | http://code.google.com/p/usbgecko/
| ppc.h | | GPL | | http://code.google.com/p/usbgecko/
| sdhc.c | Modified | GPL | Waninkoko | USB Loader 1.5
| sdhc.h | Modified | GPL | Waninkoko | USB Loader 1.5
| sys.c | Modified | GPL | Waninkoko | USB Loader 1.5
| sys.h | Modified | GPL | Waninkoko | USB Loader 1.5
| usbstorage.c | Modified | GPL | Kwiirk, Hermes | YAL, USB Loader 1.5, uLoader 3.0C
| usbstorage.h | Modified | GPL | Kwiirk | YAL, USB Loader 1.5, uLoader 3.0C
| utils.c | | GPL | Waninkoko | USB Loader 1.5
| utils.h | | GPL | Waninkoko | USB Loader 1.5
| utils.c | | GPL | Waninkoko | USB Loader 1.5
| utils.h | | GPL | Waninkoko | USB Loader 1.5
| videopatch.c | Rewritten | GPL | WiiPower? | NeoGamma
| videopatch.h | Rewritten | GPL | WiiPower? | NeoGamma
| wbfs.c | Modified | GPL | Waninkoko | USB Loader 1.5
| wbfs.h | Modified | GPL | Waninkoko | USB Loader 1.5
| wdvd.c | Modified | GPL | Kwiirk, Hermes, Waninkoko | USB Loader 1.5
| wdvd.h | Modified | GPL | Kwiirk, Hermes, Waninkoko | USB Loader 1.5
--------------------------------------------------------------------------------------------------------
source/libs/libwbfs/
| File | Comment | Lic | Original author(s) | Project where the original code is
|-----------------|------------|------|----------------------------|------------------------------------
| libwbfs.c | Modified | GPL | Kwiirk | YAL?
| libwbfs.h | Modified | GPL | Kwiirk | YAL?
| libwbfs_os.h | Modified | GPL | Kwiirk | YAL?
| rijndael.c | | ? | Mike Scott |
| wiidisc.c | Modified | GPL | Kwiirk | YAL?
| wiidisc.h | Modified | GPL | Kwiirk | YAL?
--------------------------------------------------------------------------------------------------------
source/menu/
| File | Comment | Lic | Original author(s) | Project where the original code is
|-----------------|------------|------|----------------------------|------------------------------------
| *.cpp, *hpp | | GPL | | WiiFlow 1.1
--------------------------------------------------------------------------------------------------------
include
| File | Comment | Lic | Original author(s) | Project where the original code is
|-----------------|------------|------|----------------------------|------------------------------------
| ft2build.h | | ? | | FreeType
| png.h | | PNG | | http://www.libpng.org
| pngconf.h | Modified | PNG | | http://www.libpng.org
--------------------------------------------------------------------------------------------------------
include/freetype
| File | Comment | Lic | Original author(s) | Project where the original code is
|-----------------|------------|------|----------------------------|------------------------------------
| *.h | | ? | | FreeType
--------------------------------------------------------------------------------------------------------
include/tremor
| File | Comment | Lic | Original author(s) | Project where the original code is
|-----------------|------------|------|----------------------------|------------------------------------
| *.h | | ? | | Tremor
--------------------------------------------------------------------------------------------------------
lib
| File | Comment | Lic | Original author(s) | Project where the original code is
|-----------------|------------|------|----------------------------|------------------------------------
| *.a | | | |
--------------------------------------------------------------------------------------------------------

View File

@ -1,6 +0,0 @@
WiiFlow 1.1 since R23 was compiled using devkitPPC r18 or r19.
Since R39 it was compiled using devkitPPC r21 and libogc 1.8.3.
Since around R374 Wiiflow was compiled using devkitPPC r23 and libogc 1.8.7
Since around R400 Wiiflow was compiled using devkitPPC r24 and libogc 1.8.8
All required portlibs are included in the source and dont need to be bothered with for compilation.

View File

@ -1,49 +0,0 @@
[GENERAL]
app_zip_size=2042058
changes=2.2 Alpha2 Now updates data folder with zip support.\nMany more changes. (see svn for full details.)
data_zip_size=456334
dol_size=3713248
num_versions=6
update_url=http://wiiflow.org/update
type=zip
version=228
latestversion=228
[VERSION1]
changes=Fix channels on base 57.\nAdd wiimote gestures and extenstions' stick sensitivity.\nOnly save ini's when they have changed.\nAdd ncard to channel launching.
version=181
type=dol
[VERSION2]
changes=Some more tweaks.
version=170
type=dol
[VERSION3]
changes=Full ntfs support with writing.\nAlt-Dol+ and WiiTDB.zip support with game informations.\nWinnertag and gamercard added.\nScreenshot feature added (gcpad z)\n Multiple bug fixes (more to come).
version=166
type=dol
[VERSION4]
changes=r92a release.
version=92
type=dol
#[GENERAL]
#app_zip_size= (if type != dol, {ios}.zip size in bytes, else 0)
#changes= (Self explanatory)
#data_zip_size= (if type != dol, data.zip size in bytes, else 0)
#dol_size= (if type == dol, dol size in bytes, else 0)
#num_versions= (installed version + number available in this txt file including latest version)
#type= (dol|zip set to dol if update is for dol only without zip. defaults to zip.)
#update_url= (http://wiiflow.org/update)
#version= (latest version revision number)
#[VERSION#]
#app_zip_size=
#changes=
#data_zip_size=
#dol_size=
#type=
#version= (revision number to DL)

View File

@ -1 +1 @@
copy the boot.dol and folders into apps/wiiflow_lite copy the boot.dol and folders into apps/wiiflow

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Before

Width:  |  Height:  |  Size: 4.1 MiB

After

Width:  |  Height:  |  Size: 4.4 MiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 854 B

BIN
out/imgs/background.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.0 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.3 KiB

After

Width:  |  Height:  |  Size: 3.0 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 4.3 KiB

After

Width:  |  Height:  |  Size: 4.0 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 5.1 KiB

After

Width:  |  Height:  |  Size: 3.3 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 4.2 KiB

After

Width:  |  Height:  |  Size: 2.3 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 4.8 KiB

After

Width:  |  Height:  |  Size: 2.9 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 4.7 KiB

After

Width:  |  Height:  |  Size: 2.9 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 984 B

BIN
out/imgs/dvdskin.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.8 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 636 B

BIN
out/imgs/dvdskin_black.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.1 KiB

BIN
out/imgs/dvdskin_clear.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.2 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 858 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.4 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 951 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.1 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 964 B

BIN
out/imgs/dvdskin_red.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.0 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 888 B

BIN
out/imgs/dvdskin_yellow.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.0 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.5 KiB

BIN
out/imgs/esrb_ao.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.7 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.5 KiB

BIN
out/imgs/esrb_e.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.6 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.6 KiB

BIN
out/imgs/esrb_ec.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.8 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.5 KiB

BIN
out/imgs/esrb_eten.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.7 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.5 KiB

BIN
out/imgs/esrb_m.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.7 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.4 KiB

BIN
out/imgs/esrb_t.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.5 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.0 KiB

BIN
out/imgs/flatloading.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 9.3 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 970 B

After

Width:  |  Height:  |  Size: 966 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 4.2 KiB

BIN
out/imgs/loading.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 10 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.4 KiB

After

Width:  |  Height:  |  Size: 1.3 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.9 KiB

After

Width:  |  Height:  |  Size: 1.7 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 4.3 KiB

After

Width:  |  Height:  |  Size: 1.0 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 4.6 KiB

After

Width:  |  Height:  |  Size: 1.8 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.5 KiB

BIN
out/imgs/norating.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.6 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.6 KiB

After

Width:  |  Height:  |  Size: 1.5 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.4 KiB

After

Width:  |  Height:  |  Size: 2.3 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.6 KiB

After

Width:  |  Height:  |  Size: 999 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.7 KiB

After

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.7 KiB

After

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.7 KiB

After

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.7 KiB

After

Width:  |  Height:  |  Size: 1.2 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.7 KiB

After

Width:  |  Height:  |  Size: 1.1 KiB

282
portlibs/include/bzlib.h Normal file
View File

@ -0,0 +1,282 @@
/*-------------------------------------------------------------*/
/*--- Public header file for the library. ---*/
/*--- bzlib.h ---*/
/*-------------------------------------------------------------*/
/* ------------------------------------------------------------------
This file is part of bzip2/libbzip2, a program and library for
lossless, block-sorting data compression.
bzip2/libbzip2 version 1.0.6 of 6 September 2010
Copyright (C) 1996-2010 Julian Seward <jseward@bzip.org>
Please read the WARNING, DISCLAIMER and PATENTS sections in the
README file.
This program is released under the terms of the license contained
in the file LICENSE.
------------------------------------------------------------------ */
#ifndef _BZLIB_H
#define _BZLIB_H
#ifdef __cplusplus
extern "C" {
#endif
#define BZ_RUN 0
#define BZ_FLUSH 1
#define BZ_FINISH 2
#define BZ_OK 0
#define BZ_RUN_OK 1
#define BZ_FLUSH_OK 2
#define BZ_FINISH_OK 3
#define BZ_STREAM_END 4
#define BZ_SEQUENCE_ERROR (-1)
#define BZ_PARAM_ERROR (-2)
#define BZ_MEM_ERROR (-3)
#define BZ_DATA_ERROR (-4)
#define BZ_DATA_ERROR_MAGIC (-5)
#define BZ_IO_ERROR (-6)
#define BZ_UNEXPECTED_EOF (-7)
#define BZ_OUTBUFF_FULL (-8)
#define BZ_CONFIG_ERROR (-9)
typedef
struct {
char *next_in;
unsigned int avail_in;
unsigned int total_in_lo32;
unsigned int total_in_hi32;
char *next_out;
unsigned int avail_out;
unsigned int total_out_lo32;
unsigned int total_out_hi32;
void *state;
void *(*bzalloc)(void *,int,int);
void (*bzfree)(void *,void *);
void *opaque;
}
bz_stream;
#ifndef BZ_IMPORT
#define BZ_EXPORT
#endif
#ifndef BZ_NO_STDIO
/* Need a definitition for FILE */
#include <stdio.h>
#endif
#ifdef _WIN32
# include <windows.h>
# ifdef small
/* windows.h define small to char */
# undef small
# endif
# ifdef BZ_EXPORT
# define BZ_API(func) WINAPI func
# define BZ_EXTERN extern
# else
/* import windows dll dynamically */
# define BZ_API(func) (WINAPI * func)
# define BZ_EXTERN
# endif
#else
# define BZ_API(func) func
# define BZ_EXTERN extern
#endif
/*-- Core (low-level) library functions --*/
BZ_EXTERN int BZ_API(BZ2_bzCompressInit) (
bz_stream* strm,
int blockSize100k,
int verbosity,
int workFactor
);
BZ_EXTERN int BZ_API(BZ2_bzCompress) (
bz_stream* strm,
int action
);
BZ_EXTERN int BZ_API(BZ2_bzCompressEnd) (
bz_stream* strm
);
BZ_EXTERN int BZ_API(BZ2_bzDecompressInit) (
bz_stream *strm,
int verbosity,
int small
);
BZ_EXTERN int BZ_API(BZ2_bzDecompress) (
bz_stream* strm
);
BZ_EXTERN int BZ_API(BZ2_bzDecompressEnd) (
bz_stream *strm
);
/*-- High(er) level library functions --*/
#ifndef BZ_NO_STDIO
#define BZ_MAX_UNUSED 5000
typedef void BZFILE;
BZ_EXTERN BZFILE* BZ_API(BZ2_bzReadOpen) (
int* bzerror,
FILE* f,
int verbosity,
int small,
void* unused,
int nUnused
);
BZ_EXTERN void BZ_API(BZ2_bzReadClose) (
int* bzerror,
BZFILE* b
);
BZ_EXTERN void BZ_API(BZ2_bzReadGetUnused) (
int* bzerror,
BZFILE* b,
void** unused,
int* nUnused
);
BZ_EXTERN int BZ_API(BZ2_bzRead) (
int* bzerror,
BZFILE* b,
void* buf,
int len
);
BZ_EXTERN BZFILE* BZ_API(BZ2_bzWriteOpen) (
int* bzerror,
FILE* f,
int blockSize100k,
int verbosity,
int workFactor
);
BZ_EXTERN void BZ_API(BZ2_bzWrite) (
int* bzerror,
BZFILE* b,
void* buf,
int len
);
BZ_EXTERN void BZ_API(BZ2_bzWriteClose) (
int* bzerror,
BZFILE* b,
int abandon,
unsigned int* nbytes_in,
unsigned int* nbytes_out
);
BZ_EXTERN void BZ_API(BZ2_bzWriteClose64) (
int* bzerror,
BZFILE* b,
int abandon,
unsigned int* nbytes_in_lo32,
unsigned int* nbytes_in_hi32,
unsigned int* nbytes_out_lo32,
unsigned int* nbytes_out_hi32
);
#endif
/*-- Utility functions --*/
BZ_EXTERN int BZ_API(BZ2_bzBuffToBuffCompress) (
char* dest,
unsigned int* destLen,
char* source,
unsigned int sourceLen,
int blockSize100k,
int verbosity,
int workFactor
);
BZ_EXTERN int BZ_API(BZ2_bzBuffToBuffDecompress) (
char* dest,
unsigned int* destLen,
char* source,
unsigned int sourceLen,
int small,
int verbosity
);
/*--
Code contributed by Yoshioka Tsuneo (tsuneo@rr.iij4u.or.jp)
to support better zlib compatibility.
This code is not _officially_ part of libbzip2 (yet);
I haven't tested it, documented it, or considered the
threading-safeness of it.
If this code breaks, please contact both Yoshioka and me.
--*/
BZ_EXTERN const char * BZ_API(BZ2_bzlibVersion) (
void
);
#ifndef BZ_NO_STDIO
BZ_EXTERN BZFILE * BZ_API(BZ2_bzopen) (
const char *path,
const char *mode
);
BZ_EXTERN BZFILE * BZ_API(BZ2_bzdopen) (
int fd,
const char *mode
);
BZ_EXTERN int BZ_API(BZ2_bzread) (
BZFILE* b,
void* buf,
int len
);
BZ_EXTERN int BZ_API(BZ2_bzwrite) (
BZFILE* b,
void* buf,
int len
);
BZ_EXTERN int BZ_API(BZ2_bzflush) (
BZFILE* b
);
BZ_EXTERN void BZ_API(BZ2_bzclose) (
BZFILE* b
);
BZ_EXTERN const char * BZ_API(BZ2_bzerror) (
BZFILE *b,
int *errnum
);
#endif
#ifdef __cplusplus
}
#endif
#endif
/*-------------------------------------------------------------*/
/*--- end bzlib.h ---*/
/*-------------------------------------------------------------*/

View File

@ -1,7 +1,7 @@
/* /*
fat.h fat.h
Simple functionality for startup, mounting and unmounting of FAT-based devices. Simple functionality for startup, mounting and unmounting of FAT-based devices.
Copyright (c) 2006 - 2012 Copyright (c) 2006 - 2012
Michael "Chishm" Chisholm Michael "Chishm" Chisholm
Dave "WinterMute" Murphy Dave "WinterMute" Murphy
@ -73,7 +73,7 @@ extern bool fatInitDefault (void);
/* /*
Mount the device pointed to by interface, and set up a devoptab entry for it as "name:". Mount the device pointed to by interface, and set up a devoptab entry for it as "name:".
You can then access the filesystem using "name:/". You can then access the filesystem using "name:/".
This will mount the active partition or the first valid partition on the disc, This will mount the active partition or the first valid partition on the disc,
and will use a cache size optimized for the host system. and will use a cache size optimized for the host system.
*/ */
extern bool fatMountSimple (const char* name, const DISC_INTERFACE* interface); extern bool fatMountSimple (const char* name, const DISC_INTERFACE* interface);
@ -111,7 +111,7 @@ extern void fatGetVolumeLabel (const char* name, char *label);
Methods to modify DOS File Attributes Methods to modify DOS File Attributes
*/ */
int FAT_getAttr(const char *file); int FAT_getAttr(const char *file);
int FAT_setAttr(const char *file, int attr ); int FAT_setAttr(const char *file, uint8_t attr );
#define LIBFAT_FEOS_MULTICWD #define LIBFAT_FEOS_MULTICWD

View File

@ -5,7 +5,7 @@
/* */ /* */
/* UNIX-specific configuration file (specification only). */ /* UNIX-specific configuration file (specification only). */
/* */ /* */
/* Copyright 1996-2004, 2006-2009, 2011, 2013 by */ /* Copyright 1996-2018 by */
/* David Turner, Robert Wilhelm, and Werner Lemberg. */ /* David Turner, Robert Wilhelm, and Werner Lemberg. */
/* */ /* */
/* This file is part of the FreeType project, and may only be used, */ /* This file is part of the FreeType project, and may only be used, */
@ -28,15 +28,15 @@
/* Note however that if some specific modifications are needed, we */ /* Note however that if some specific modifications are needed, we */
/* advise you to place a modified copy in your build directory. */ /* advise you to place a modified copy in your build directory. */
/* */ /* */
/* The build directory is usually `freetype/builds/<system>', and */ /* The build directory is usually `builds/<system>', and contains */
/* contains system-specific files that are always included first when */ /* system-specific files that are always included first when building */
/* building the library. */ /* the library. */
/* */ /* */
/*************************************************************************/ /*************************************************************************/
#ifndef __FTCONFIG_H__ #ifndef FTCONFIG_H_
#define __FTCONFIG_H__ #define FTCONFIG_H_
#include <ft2build.h> #include <ft2build.h>
#include FT_CONFIG_OPTIONS_H #include FT_CONFIG_OPTIONS_H
@ -53,7 +53,7 @@ FT_BEGIN_HEADER
/* These macros can be toggled to suit a specific system. The current */ /* These macros can be toggled to suit a specific system. The current */
/* ones are defaults used to compile FreeType in an ANSI C environment */ /* ones are defaults used to compile FreeType in an ANSI C environment */
/* (16bit compilers are also supported). Copy this file to your own */ /* (16bit compilers are also supported). Copy this file to your own */
/* `freetype/builds/<system>' directory, and edit it to port the engine. */ /* `builds/<system>' directory, and edit it to port the engine. */
/* */ /* */
/*************************************************************************/ /*************************************************************************/
@ -90,7 +90,7 @@ FT_BEGIN_HEADER
/* is copied from default include/freetype/config/ftconfig.h. */ /* is copied from default include/freetype/config/ftconfig.h. */
/* If any improvement is required for this file, it should be */ /* If any improvement is required for this file, it should be */
/* applied to the original header file for the builders that */ /* applied to the original header file for the builders that */
/* does not use configure script. */ /* do not use configure script. */
/* The size of an `int' type. */ /* The size of an `int' type. */
#if FT_UINT_MAX == 0xFFFFUL #if FT_UINT_MAX == 0xFFFFUL
@ -243,6 +243,18 @@ FT_BEGIN_HEADER
/* */ /* */
typedef signed XXX FT_Int64; typedef signed XXX FT_Int64;
/*************************************************************************/
/* */
/* <Type> */
/* FT_UInt64 */
/* */
/* A typedef for a 64bit unsigned integer type. The size depends on */
/* the configuration. Only defined if there is real 64bit support; */
/* otherwise, it gets emulated with a structure (if necessary). */
/* */
typedef unsigned XXX FT_UInt64;
/* */ /* */
#endif #endif
@ -276,19 +288,46 @@ FT_BEGIN_HEADER
#endif #endif
/* determine whether we have a 64-bit int type for platforms without */ /* determine whether we have a 64-bit int type */
/* Autoconf */ /* (mostly for environments without `autoconf') */
#if FT_SIZEOF_LONG == 8 #if FT_SIZEOF_LONG == 8
/* FT_LONG64 must be defined if a 64-bit type is available */ /* FT_LONG64 must be defined if a 64-bit type is available */
#define FT_LONG64 #define FT_LONG64
#define FT_INT64 long #define FT_INT64 long
#define FT_UINT64 unsigned long
/* we handle the LLP64 scheme separately for GCC and clang, */
/* suppressing the `long long' warning */
#elif ( FT_SIZEOF_LONG == 4 ) && \
defined( HAVE_LONG_LONG_INT ) && \
defined( __GNUC__ )
#pragma GCC diagnostic ignored "-Wlong-long"
#define FT_LONG64
#define FT_INT64 long long int
#define FT_UINT64 unsigned long long int
/*************************************************************************/
/* */
/* A 64-bit data type may create compilation problems if you compile */
/* in strict ANSI mode. To avoid them, we disable other 64-bit data */
/* types if __STDC__ is defined. You can however ignore this rule */
/* by defining the FT_CONFIG_OPTION_FORCE_INT64 configuration macro. */
/* */
#elif !defined( __STDC__ ) || defined( FT_CONFIG_OPTION_FORCE_INT64 )
#if defined( __STDC_VERSION__ ) && __STDC_VERSION__ >= 199901L
#define FT_LONG64
#define FT_INT64 long long int
#define FT_UINT64 unsigned long long int
#elif defined( _MSC_VER ) && _MSC_VER >= 900 /* Visual C++ (and Intel C++) */ #elif defined( _MSC_VER ) && _MSC_VER >= 900 /* Visual C++ (and Intel C++) */
/* this compiler provides the __int64 type */ /* this compiler provides the __int64 type */
#define FT_LONG64 #define FT_LONG64
#define FT_INT64 __int64 #define FT_INT64 __int64
#define FT_UINT64 unsigned __int64
#elif defined( __BORLANDC__ ) /* Borland C++ */ #elif defined( __BORLANDC__ ) /* Borland C++ */
@ -297,7 +336,8 @@ FT_BEGIN_HEADER
/* this compiler provides the __int64 type */ /* this compiler provides the __int64 type */
#define FT_LONG64 #define FT_LONG64
#define FT_INT64 __int64 #define FT_INT64 __int64
#define FT_UINT64 unsigned __int64
#elif defined( __WATCOMC__ ) /* Watcom C++ */ #elif defined( __WATCOMC__ ) /* Watcom C++ */
@ -306,42 +346,40 @@ FT_BEGIN_HEADER
#elif defined( __MWERKS__ ) /* Metrowerks CodeWarrior */ #elif defined( __MWERKS__ ) /* Metrowerks CodeWarrior */
#define FT_LONG64 #define FT_LONG64
#define FT_INT64 long long int #define FT_INT64 long long int
#define FT_UINT64 unsigned long long int
#elif defined( __GNUC__ ) #elif defined( __GNUC__ )
/* GCC provides the `long long' type */ /* GCC provides the `long long' type */
#define FT_LONG64 #define FT_LONG64
#define FT_INT64 long long int #define FT_INT64 long long int
#define FT_UINT64 unsigned long long int
#endif /* __STDC_VERSION__ >= 199901L */
#endif /* FT_SIZEOF_LONG == 8 */ #endif /* FT_SIZEOF_LONG == 8 */
#ifdef FT_LONG64
typedef FT_INT64 FT_Int64;
typedef FT_UINT64 FT_UInt64;
#endif
#ifdef _WIN64
/* only 64bit Windows uses the LLP64 data model, i.e., */
/* 32bit integers, 64bit pointers */
#define FT_UINT_TO_POINTER( x ) (void*)(unsigned __int64)(x)
#else
#define FT_UINT_TO_POINTER( x ) (void*)(unsigned long)(x)
#endif
/*************************************************************************/ /*************************************************************************/
/* */ /* */
/* A 64-bit data type will create compilation problems if you compile */ /* miscellaneous */
/* in strict ANSI mode. To avoid them, we disable its use if __STDC__ */
/* is defined. You can however ignore this rule by defining the */
/* FT_CONFIG_OPTION_FORCE_INT64 configuration macro. */
/* */ /* */
#if defined( FT_LONG64 ) && !defined( FT_CONFIG_OPTION_FORCE_INT64 ) /*************************************************************************/
#ifdef __STDC__
/* Undefine the 64-bit macros in strict ANSI compilation mode. */
/* Since `#undef' doesn't survive in configuration header files */
/* we use the postprocessing facility of AC_CONFIG_HEADERS to */
/* replace the leading `/' with `#'. */
#undef FT_LONG64
#undef FT_INT64
#endif /* __STDC__ */
#endif /* FT_LONG64 && !FT_CONFIG_OPTION_FORCE_INT64 */
#ifdef FT_LONG64
typedef FT_INT64 FT_Int64;
#endif
#define FT_BEGIN_STMNT do { #define FT_BEGIN_STMNT do {
@ -349,148 +387,25 @@ FT_BEGIN_HEADER
#define FT_DUMMY_STMNT FT_BEGIN_STMNT FT_END_STMNT #define FT_DUMMY_STMNT FT_BEGIN_STMNT FT_END_STMNT
#ifndef FT_CONFIG_OPTION_NO_ASSEMBLER /* typeof condition taken from gnulib's `intprops.h' header file */
/* Provide assembler fragments for performance-critical functions. */ #if ( ( defined( __GNUC__ ) && __GNUC__ >= 2 ) || \
/* These must be defined `static __inline__' with GCC. */ ( defined( __IBMC__ ) && __IBMC__ >= 1210 && \
defined( __IBM__TYPEOF__ ) ) || \
#if defined( __CC_ARM ) || defined( __ARMCC__ ) /* RVCT */ ( defined( __SUNPRO_C ) && __SUNPRO_C >= 0x5110 && !__STDC__ ) )
#define FT_MULFIX_ASSEMBLER FT_MulFix_arm #define FT_TYPEOF( type ) ( __typeof__ ( type ) )
#else
/* documentation is in freetype.h */ #define FT_TYPEOF( type ) /* empty */
static __inline FT_Int32
FT_MulFix_arm( FT_Int32 a,
FT_Int32 b )
{
register FT_Int32 t, t2;
__asm
{
smull t2, t, b, a /* (lo=t2,hi=t) = a*b */
mov a, t, asr #31 /* a = (hi >> 31) */
add a, a, #0x8000 /* a += 0x8000 */
adds t2, t2, a /* t2 += a */
adc t, t, #0 /* t += carry */
mov a, t2, lsr #16 /* a = t2 >> 16 */
orr a, a, t, lsl #16 /* a |= t << 16 */
}
return a;
}
#endif /* __CC_ARM || __ARMCC__ */
#ifdef __GNUC__
#if defined( __arm__ ) && !defined( __thumb__ ) && \
!( defined( __CC_ARM ) || defined( __ARMCC__ ) )
#define FT_MULFIX_ASSEMBLER FT_MulFix_arm
/* documentation is in freetype.h */
static __inline__ FT_Int32
FT_MulFix_arm( FT_Int32 a,
FT_Int32 b )
{
register FT_Int32 t, t2;
__asm__ __volatile__ (
"smull %1, %2, %4, %3\n\t" /* (lo=%1,hi=%2) = a*b */
"mov %0, %2, asr #31\n\t" /* %0 = (hi >> 31) */
"add %0, %0, #0x8000\n\t" /* %0 += 0x8000 */
"adds %1, %1, %0\n\t" /* %1 += %0 */
"adc %2, %2, #0\n\t" /* %2 += carry */
"mov %0, %1, lsr #16\n\t" /* %0 = %1 >> 16 */
"orr %0, %0, %2, lsl #16\n\t" /* %0 |= %2 << 16 */
: "=r"(a), "=&r"(t2), "=&r"(t)
: "r"(a), "r"(b)
: "cc" );
return a;
}
#endif /* __arm__ && !__thumb__ && !( __CC_ARM || __ARMCC__ ) */
#if defined( __i386__ )
#define FT_MULFIX_ASSEMBLER FT_MulFix_i386
/* documentation is in freetype.h */
static __inline__ FT_Int32
FT_MulFix_i386( FT_Int32 a,
FT_Int32 b )
{
register FT_Int32 result;
__asm__ __volatile__ (
"imul %%edx\n"
"movl %%edx, %%ecx\n"
"sarl $31, %%ecx\n"
"addl $0x8000, %%ecx\n"
"addl %%ecx, %%eax\n"
"adcl $0, %%edx\n"
"shrl $16, %%eax\n"
"shll $16, %%edx\n"
"addl %%edx, %%eax\n"
: "=a"(result), "=d"(b)
: "a"(a), "d"(b)
: "%ecx", "cc" );
return result;
}
#endif /* i386 */
#endif /* __GNUC__ */
#ifdef _MSC_VER /* Visual C++ */
#ifdef _M_IX86
#define FT_MULFIX_ASSEMBLER FT_MulFix_i386
/* documentation is in freetype.h */
static __inline FT_Int32
FT_MulFix_i386( FT_Int32 a,
FT_Int32 b )
{
register FT_Int32 result;
__asm
{
mov eax, a
mov edx, b
imul edx
mov ecx, edx
sar ecx, 31
add ecx, 8000h
add eax, ecx
adc edx, 0
shr eax, 16
shl edx, 16
add eax, edx
mov result, eax
}
return result;
}
#endif /* _M_IX86 */
#endif /* _MSC_VER */
#endif /* !FT_CONFIG_OPTION_NO_ASSEMBLER */
#ifdef FT_CONFIG_OPTION_INLINE_MULFIX
#ifdef FT_MULFIX_ASSEMBLER
#define FT_MULFIX_INLINED FT_MULFIX_ASSEMBLER
#endif
#endif #endif
/* Use FT_LOCAL and FT_LOCAL_DEF to declare and define, respectively, */
/* a function that gets used only within the scope of a module. */
/* Normally, both the header and source code files for such a */
/* function are within a single module directory. */
/* */
/* Intra-module arrays should be tagged with FT_LOCAL_ARRAY and */
/* FT_LOCAL_ARRAY_DEF. */
/* */
#ifdef FT_MAKE_OPTION_SINGLE_OBJECT #ifdef FT_MAKE_OPTION_SINGLE_OBJECT
#define FT_LOCAL( x ) static x #define FT_LOCAL( x ) static x
@ -508,7 +423,16 @@ FT_BEGIN_HEADER
#endif /* FT_MAKE_OPTION_SINGLE_OBJECT */ #endif /* FT_MAKE_OPTION_SINGLE_OBJECT */
#define FT_LOCAL_ARRAY( x ) extern const x
#define FT_LOCAL_ARRAY_DEF( x ) const x
/* Use FT_BASE and FT_BASE_DEF to declare and define, respectively, */
/* functions that are used in more than a single module. In the */
/* current setup this implies that the declaration is in a header */
/* file in the `include/freetype/internal' directory, and the */
/* function body is in a file in `src/base'. */
/* */
#ifndef FT_BASE #ifndef FT_BASE
#ifdef __cplusplus #ifdef __cplusplus
@ -531,14 +455,63 @@ FT_BEGIN_HEADER
#endif /* !FT_BASE_DEF */ #endif /* !FT_BASE_DEF */
/* When compiling FreeType as a DLL or DSO with hidden visibility */
/* some systems/compilers need a special attribute in front OR after */
/* the return type of function declarations. */
/* */
/* Two macros are used within the FreeType source code to define */
/* exported library functions: FT_EXPORT and FT_EXPORT_DEF. */
/* */
/* FT_EXPORT( return_type ) */
/* */
/* is used in a function declaration, as in */
/* */
/* FT_EXPORT( FT_Error ) */
/* FT_Init_FreeType( FT_Library* alibrary ); */
/* */
/* */
/* FT_EXPORT_DEF( return_type ) */
/* */
/* is used in a function definition, as in */
/* */
/* FT_EXPORT_DEF( FT_Error ) */
/* FT_Init_FreeType( FT_Library* alibrary ) */
/* { */
/* ... some code ... */
/* return FT_Err_Ok; */
/* } */
/* */
/* You can provide your own implementation of FT_EXPORT and */
/* FT_EXPORT_DEF here if you want. */
/* */
/* To export a variable, use FT_EXPORT_VAR. */
/* */
#ifndef FT_EXPORT #ifndef FT_EXPORT
#ifdef __cplusplus #ifdef FT2_BUILD_LIBRARY
#if defined( _WIN32 ) && ( defined( _DLL ) || defined( DLL_EXPORT ) )
#define FT_EXPORT( x ) __declspec( dllexport ) x
#elif defined( __GNUC__ ) && __GNUC__ >= 4
#define FT_EXPORT( x ) __attribute__(( visibility( "default" ) )) x
#elif defined( __cplusplus )
#define FT_EXPORT( x ) extern "C" x #define FT_EXPORT( x ) extern "C" x
#else #else
#define FT_EXPORT( x ) extern x #define FT_EXPORT( x ) extern x
#endif #endif
#else
#if defined( FT2_DLLIMPORT )
#define FT_EXPORT( x ) __declspec( dllimport ) x
#elif defined( __cplusplus )
#define FT_EXPORT( x ) extern "C" x
#else
#define FT_EXPORT( x ) extern x
#endif
#endif
#endif /* !FT_EXPORT */ #endif /* !FT_EXPORT */
@ -574,7 +547,13 @@ FT_BEGIN_HEADER
/* functions which are accessed by (global) function pointers. */ /* functions which are accessed by (global) function pointers. */
/* */ /* */
/* */ /* */
/* FT_CALLBACK_DEF is used to _define_ a callback function. */ /* FT_CALLBACK_DEF is used to _define_ a callback function, */
/* located in the same source code file as the structure that uses */
/* it. */
/* */
/* FT_BASE_CALLBACK and FT_BASE_CALLBACK_DEF are used to declare */
/* and define a callback function, respectively, in a similar way */
/* as FT_BASE and FT_BASE_DEF work. */
/* */ /* */
/* FT_CALLBACK_TABLE is used to _declare_ a constant variable that */ /* FT_CALLBACK_TABLE is used to _declare_ a constant variable that */
/* contains pointers to callback functions. */ /* contains pointers to callback functions. */
@ -594,6 +573,16 @@ FT_BEGIN_HEADER
#endif #endif
#endif /* FT_CALLBACK_DEF */ #endif /* FT_CALLBACK_DEF */
#ifndef FT_BASE_CALLBACK
#ifdef __cplusplus
#define FT_BASE_CALLBACK( x ) extern "C" x
#define FT_BASE_CALLBACK_DEF( x ) extern "C" x
#else
#define FT_BASE_CALLBACK( x ) extern x
#define FT_BASE_CALLBACK_DEF( x ) x
#endif
#endif /* FT_BASE_CALLBACK */
#ifndef FT_CALLBACK_TABLE #ifndef FT_CALLBACK_TABLE
#ifdef __cplusplus #ifdef __cplusplus
#define FT_CALLBACK_TABLE extern "C" #define FT_CALLBACK_TABLE extern "C"
@ -608,7 +597,7 @@ FT_BEGIN_HEADER
FT_END_HEADER FT_END_HEADER
#endif /* __FTCONFIG_H__ */ #endif /* FTCONFIG_H_ */
/* END */ /* END */

View File

@ -4,7 +4,7 @@
/* */ /* */
/* Build macros of the FreeType 2 library. */ /* Build macros of the FreeType 2 library. */
/* */ /* */
/* Copyright 1996-2008, 2010, 2012, 2013 by */ /* Copyright 1996-2018 by */
/* David Turner, Robert Wilhelm, and Werner Lemberg. */ /* David Turner, Robert Wilhelm, and Werner Lemberg. */
/* */ /* */
/* This file is part of the FreeType project, and may only be used, */ /* This file is part of the FreeType project, and may only be used, */
@ -15,8 +15,8 @@
/* */ /* */
/***************************************************************************/ /***************************************************************************/
#ifndef __FT_HEADER_H__ #ifndef FTHEADER_H_
#define __FT_HEADER_H__ #define FTHEADER_H_
/*@***********************************************************************/ /*@***********************************************************************/
@ -315,6 +315,19 @@
#define FT_RENDER_H <freetype/ftrender.h> #define FT_RENDER_H <freetype/ftrender.h>
/*************************************************************************
*
* @macro:
* FT_DRIVER_H
*
* @description:
* A macro used in #include statements to name the file containing
* structures and macros related to the driver modules.
*
*/
#define FT_DRIVER_H <freetype/ftdriver.h>
/************************************************************************* /*************************************************************************
* *
* @macro: * @macro:
@ -324,8 +337,10 @@
* A macro used in #include statements to name the file containing * A macro used in #include statements to name the file containing
* structures and macros related to the auto-hinting module. * structures and macros related to the auto-hinting module.
* *
* Deprecated since version 2.9; use @FT_DRIVER_H instead.
*
*/ */
#define FT_AUTOHINTER_H <freetype/ftautoh.h> #define FT_AUTOHINTER_H FT_DRIVER_H
/************************************************************************* /*************************************************************************
@ -337,8 +352,40 @@
* A macro used in #include statements to name the file containing * A macro used in #include statements to name the file containing
* structures and macros related to the CFF driver module. * structures and macros related to the CFF driver module.
* *
* Deprecated since version 2.9; use @FT_DRIVER_H instead.
*
*/ */
#define FT_CFF_DRIVER_H <freetype/ftcffdrv.h> #define FT_CFF_DRIVER_H FT_DRIVER_H
/*************************************************************************
*
* @macro:
* FT_TRUETYPE_DRIVER_H
*
* @description:
* A macro used in #include statements to name the file containing
* structures and macros related to the TrueType driver module.
*
* Deprecated since version 2.9; use @FT_DRIVER_H instead.
*
*/
#define FT_TRUETYPE_DRIVER_H FT_DRIVER_H
/*************************************************************************
*
* @macro:
* FT_PCF_DRIVER_H
*
* @description:
* A macro used in #include statements to name the file containing
* structures and macros related to the PCF driver module.
*
* Deprecated since version 2.9; use @FT_DRIVER_H instead.
*
*/
#define FT_PCF_DRIVER_H FT_DRIVER_H
/************************************************************************* /*************************************************************************
@ -528,63 +575,6 @@
#define FT_CACHE_H <freetype/ftcache.h> #define FT_CACHE_H <freetype/ftcache.h>
/*************************************************************************
*
* @macro:
* FT_CACHE_IMAGE_H
*
* @description:
* A macro used in #include statements to name the file containing the
* `glyph image' API of the FreeType~2 cache sub-system.
*
* It is used to define a cache for @FT_Glyph elements. You can also
* use the API defined in @FT_CACHE_SMALL_BITMAPS_H if you only need to
* store small glyph bitmaps, as it will use less memory.
*
* This macro is deprecated. Simply include @FT_CACHE_H to have all
* glyph image-related cache declarations.
*
*/
#define FT_CACHE_IMAGE_H FT_CACHE_H
/*************************************************************************
*
* @macro:
* FT_CACHE_SMALL_BITMAPS_H
*
* @description:
* A macro used in #include statements to name the file containing the
* `small bitmaps' API of the FreeType~2 cache sub-system.
*
* It is used to define a cache for small glyph bitmaps in a relatively
* memory-efficient way. You can also use the API defined in
* @FT_CACHE_IMAGE_H if you want to cache arbitrary glyph images,
* including scalable outlines.
*
* This macro is deprecated. Simply include @FT_CACHE_H to have all
* small bitmaps-related cache declarations.
*
*/
#define FT_CACHE_SMALL_BITMAPS_H FT_CACHE_H
/*************************************************************************
*
* @macro:
* FT_CACHE_CHARMAP_H
*
* @description:
* A macro used in #include statements to name the file containing the
* `charmap' API of the FreeType~2 cache sub-system.
*
* This macro is deprecated. Simply include @FT_CACHE_H to have all
* charmap-based cache declarations.
*
*/
#define FT_CACHE_CHARMAP_H FT_CACHE_H
/************************************************************************* /*************************************************************************
* *
* @macro: * @macro:
@ -697,14 +687,16 @@
/************************************************************************* /*************************************************************************
* *
* @macro: * @macro:
* FT_XFREE86_H * FT_FONT_FORMATS_H
* *
* @description: * @description:
* A macro used in #include statements to name the file containing the * A macro used in #include statements to name the file containing the
* FreeType~2 API which provides functions specific to the XFree86 and * FreeType~2 API which provides functions specific to font formats.
* X.Org X11 servers.
*/ */
#define FT_XFREE86_H <freetype/ftxf86.h> #define FT_FONT_FORMATS_H <freetype/ftfntfmt.h>
/* deprecated */
#define FT_XFREE86_H FT_FONT_FORMATS_H
/************************************************************************* /*************************************************************************
@ -732,18 +724,6 @@
#define FT_LCD_FILTER_H <freetype/ftlcdfil.h> #define FT_LCD_FILTER_H <freetype/ftlcdfil.h>
/*************************************************************************
*
* @macro:
* FT_UNPATENTED_HINTING_H
*
* @description:
* A macro used in #include statements to name the file containing the
* FreeType~2 API which performs color filtering for subpixel rendering.
*/
#define FT_UNPATENTED_HINTING_H <freetype/ttunpat.h>
/************************************************************************* /*************************************************************************
* *
* @macro: * @macro:
@ -751,7 +731,7 @@
* *
* @description: * @description:
* A macro used in #include statements to name the file containing the * A macro used in #include statements to name the file containing the
* FreeType~2 API which performs color filtering for subpixel rendering. * FreeType~2 API which performs incremental glyph loading.
*/ */
#define FT_INCREMENTAL_H <freetype/ftincrem.h> #define FT_INCREMENTAL_H <freetype/ftincrem.h>
@ -782,29 +762,34 @@
/* */ /* */
/* These header files don't need to be included by the user. */
#define FT_ERROR_DEFINITIONS_H <freetype/fterrdef.h> #define FT_ERROR_DEFINITIONS_H <freetype/fterrdef.h>
#define FT_PARAMETER_TAGS_H <freetype/ftparams.h>
/* Deprecated macros. */
#define FT_UNPATENTED_HINTING_H <freetype/ftparams.h>
#define FT_TRUETYPE_UNPATENTED_H <freetype/ftparams.h>
/* FT_CACHE_H is the only header file needed for the cache subsystem. */
#define FT_CACHE_IMAGE_H FT_CACHE_H
#define FT_CACHE_SMALL_BITMAPS_H FT_CACHE_H
#define FT_CACHE_CHARMAP_H FT_CACHE_H
/* The internals of the cache sub-system are no longer exposed. We */ /* The internals of the cache sub-system are no longer exposed. We */
/* default to FT_CACHE_H at the moment just in case, but we know of */ /* default to FT_CACHE_H at the moment just in case, but we know of */
/* no rogue client that uses them. */ /* no rogue client that uses them. */
/* */ /* */
#define FT_CACHE_MANAGER_H <freetype/ftcache.h> #define FT_CACHE_MANAGER_H FT_CACHE_H
#define FT_CACHE_INTERNAL_MRU_H <freetype/ftcache.h> #define FT_CACHE_INTERNAL_MRU_H FT_CACHE_H
#define FT_CACHE_INTERNAL_MANAGER_H <freetype/ftcache.h> #define FT_CACHE_INTERNAL_MANAGER_H FT_CACHE_H
#define FT_CACHE_INTERNAL_CACHE_H <freetype/ftcache.h> #define FT_CACHE_INTERNAL_CACHE_H FT_CACHE_H
#define FT_CACHE_INTERNAL_GLYPH_H <freetype/ftcache.h> #define FT_CACHE_INTERNAL_GLYPH_H FT_CACHE_H
#define FT_CACHE_INTERNAL_IMAGE_H <freetype/ftcache.h> #define FT_CACHE_INTERNAL_IMAGE_H FT_CACHE_H
#define FT_CACHE_INTERNAL_SBITS_H <freetype/ftcache.h> #define FT_CACHE_INTERNAL_SBITS_H FT_CACHE_H
#define FT_INCREMENTAL_H <freetype/ftincrem.h>
#define FT_TRUETYPE_UNPATENTED_H <freetype/ttunpat.h>
/* /*
* Include internal headers definitions from <freetype/internal/...> * Include internal headers definitions from <internal/...>
* only when building the library. * only when building the library.
*/ */
#ifdef FT2_BUILD_LIBRARY #ifdef FT2_BUILD_LIBRARY
@ -813,7 +798,7 @@
#endif /* FT2_BUILD_LIBRARY */ #endif /* FT2_BUILD_LIBRARY */
#endif /* __FT2_BUILD_H__ */ #endif /* FTHEADER_H_ */
/* END */ /* END */

View File

@ -4,7 +4,7 @@
/* */ /* */
/* User-selectable configuration macros (specification only). */ /* User-selectable configuration macros (specification only). */
/* */ /* */
/* Copyright 1996-2013 by */ /* Copyright 1996-2018 by */
/* David Turner, Robert Wilhelm, and Werner Lemberg. */ /* David Turner, Robert Wilhelm, and Werner Lemberg. */
/* */ /* */
/* This file is part of the FreeType project, and may only be used, */ /* This file is part of the FreeType project, and may only be used, */
@ -16,8 +16,8 @@
/***************************************************************************/ /***************************************************************************/
#ifndef __FTOPTION_H__ #ifndef FTOPTION_H_
#define __FTOPTION_H__ #define FTOPTION_H_
#include <ft2build.h> #include <ft2build.h>
@ -61,7 +61,7 @@ FT_BEGIN_HEADER
/* that are statically linked to the library at compile time. By */ /* that are statically linked to the library at compile time. By */
/* default, this file is <freetype/config/ftmodule.h>. */ /* default, this file is <freetype/config/ftmodule.h>. */
/* */ /* */
/* We highly recommend using the third method whenever possible. */ /* We highly recommend using the third method whenever possible. */
/* */ /* */
/*************************************************************************/ /*************************************************************************/
@ -75,22 +75,52 @@ FT_BEGIN_HEADER
/*************************************************************************/ /*************************************************************************/
/*#***********************************************************************/
/* */
/* If you enable this configuration option, FreeType recognizes an */
/* environment variable called `FREETYPE_PROPERTIES', which can be used */
/* to control the various font drivers and modules. The controllable */
/* properties are listed in the section @properties. */
/* */
/* You have to undefine this configuration option on platforms that lack */
/* the concept of environment variables (and thus don't have the */
/* `getenv' function), for example Windows CE. */
/* */
/* `FREETYPE_PROPERTIES' has the following syntax form (broken here into */
/* multiple lines for better readability). */
/* */
/* { */
/* <optional whitespace> */
/* <module-name1> ':' */
/* <property-name1> '=' <property-value1> */
/* <whitespace> */
/* <module-name2> ':' */
/* <property-name2> '=' <property-value2> */
/* ... */
/* } */
/* */
/* Example: */
/* */
/* FREETYPE_PROPERTIES=truetype:interpreter-version=35 \ */
/* cff:no-stem-darkening=1 \ */
/* autofitter:warping=1 */
/* */
#define FT_CONFIG_OPTION_ENVIRONMENT_PROPERTIES
/*************************************************************************/ /*************************************************************************/
/* */ /* */
/* Uncomment the line below if you want to activate sub-pixel rendering */ /* Uncomment the line below if you want to activate LCD rendering */
/* (a.k.a. LCD rendering, or ClearType) in this build of the library. */ /* technology similar to ClearType in this build of the library. This */
/* technology triples the resolution in the direction color subpixels. */
/* To mitigate color fringes inherent to this technology, you also need */
/* to explicitly set up LCD filtering. */
/* */ /* */
/* Note that this feature is covered by several Microsoft patents */ /* Note that this feature is covered by several Microsoft patents */
/* and should not be activated in any default build of the library. */ /* and should not be activated in any default build of the library. */
/* */ /* When this macro is not defined, FreeType offers alternative LCD */
/* This macro has no impact on the FreeType API, only on its */ /* rendering technology that produces excellent output without LCD */
/* _implementation_. For example, using FT_RENDER_MODE_LCD when calling */ /* filtering. */
/* FT_Render_Glyph still generates a bitmap that is 3 times wider than */
/* the original size in case this macro isn't defined; however, each */
/* triplet of subpixels has R=G=B. */
/* */
/* This is done to allow FreeType clients to run unmodified, forcing */
/* them to display normal gray-level anti-aliased glyphs. */
/* */ /* */
/* #define FT_CONFIG_OPTION_SUBPIXEL_RENDERING */ /* #define FT_CONFIG_OPTION_SUBPIXEL_RENDERING */
@ -184,7 +214,11 @@ FT_BEGIN_HEADER
/* Do not #undef this macro here since the build system might define */ /* Do not #undef this macro here since the build system might define */
/* it for certain configurations only. */ /* it for certain configurations only. */
/* */ /* */
/* #define FT_CONFIG_OPTION_SYSTEM_ZLIB */ /* If you use a build system like cmake or the `configure' script, */
/* options set by those programs have precendence, overwriting the */
/* value here with the configured one. */
/* */
#define FT_CONFIG_OPTION_SYSTEM_ZLIB
/*************************************************************************/ /*************************************************************************/
@ -200,7 +234,11 @@ FT_BEGIN_HEADER
/* */ /* */
/* Define this macro if you want to enable this `feature'. */ /* Define this macro if you want to enable this `feature'. */
/* */ /* */
/* #define FT_CONFIG_OPTION_USE_BZIP2 */ /* If you use a build system like cmake or the `configure' script, */
/* options set by those programs have precendence, overwriting the */
/* value here with the configured one. */
/* */
#define FT_CONFIG_OPTION_USE_BZIP2
/*************************************************************************/ /*************************************************************************/
@ -216,44 +254,37 @@ FT_BEGIN_HEADER
/*************************************************************************/ /*************************************************************************/
/* */ /* */
/* DLL export compilation */ /* PNG bitmap support. */
/* */ /* */
/* When compiling FreeType as a DLL, some systems/compilers need a */ /* FreeType now handles loading color bitmap glyphs in the PNG format. */
/* special keyword in front OR after the return type of function */ /* This requires help from the external libpng library. Uncompressed */
/* declarations. */ /* color bitmaps do not need any external libraries and will be */
/* supported regardless of this configuration. */
/* */ /* */
/* Two macros are used within the FreeType source code to define */ /* Define this macro if you want to enable this `feature'. */
/* exported library functions: FT_EXPORT and FT_EXPORT_DEF. */
/* */ /* */
/* FT_EXPORT( return_type ) */ /* If you use a build system like cmake or the `configure' script, */
/* options set by those programs have precendence, overwriting the */
/* value here with the configured one. */
/* */ /* */
/* is used in a function declaration, as in */ #define FT_CONFIG_OPTION_USE_PNG
/*************************************************************************/
/* */ /* */
/* FT_EXPORT( FT_Error ) */ /* HarfBuzz support. */
/* FT_Init_FreeType( FT_Library* alibrary ); */
/* */ /* */
/* FreeType uses the HarfBuzz library to improve auto-hinting of */
/* OpenType fonts. If available, many glyphs not directly addressable */
/* by a font's character map will be hinted also. */
/* */ /* */
/* FT_EXPORT_DEF( return_type ) */ /* Define this macro if you want to enable this `feature'. */
/* */ /* */
/* is used in a function definition, as in */ /* If you use a build system like cmake or the `configure' script, */
/* options set by those programs have precendence, overwriting the */
/* value here with the configured one. */
/* */ /* */
/* FT_EXPORT_DEF( FT_Error ) */ /* #undef FT_CONFIG_OPTION_USE_HARFBUZZ */
/* FT_Init_FreeType( FT_Library* alibrary ) */
/* { */
/* ... some code ... */
/* return FT_Err_Ok; */
/* } */
/* */
/* You can provide your own implementation of FT_EXPORT and */
/* FT_EXPORT_DEF here if you want. If you leave them undefined, they */
/* will be later automatically defined as `extern return_type' to */
/* allow normal compilation. */
/* */
/* Do not #undef these macros here since the build system might define */
/* them for certain configurations only. */
/* */
/* #define FT_EXPORT(x) extern x */
/* #define FT_EXPORT_DEF(x) x */
/*************************************************************************/ /*************************************************************************/
@ -270,7 +301,7 @@ FT_BEGIN_HEADER
/* */ /* */
/* - The TrueType driver will provide its own set of glyph names, */ /* - The TrueType driver will provide its own set of glyph names, */
/* if you build it to support postscript names in the TrueType */ /* if you build it to support postscript names in the TrueType */
/* `post' table. */ /* `post' table, but will not synthesize a missing Unicode charmap. */
/* */ /* */
/* - The Type 1 driver will not be able to synthesize a Unicode */ /* - The Type 1 driver will not be able to synthesize a Unicode */
/* charmap out of the glyphs found in the fonts. */ /* charmap out of the glyphs found in the fonts. */
@ -351,10 +382,6 @@ FT_BEGIN_HEADER
/* The size in bytes of the render pool used by the scan-line converter */ /* The size in bytes of the render pool used by the scan-line converter */
/* to do all of its work. */ /* to do all of its work. */
/* */ /* */
/* This must be greater than 4KByte if you use FreeType to rasterize */
/* glyphs; otherwise, you may set it to zero to avoid unnecessary */
/* allocation of the render pool. */
/* */
#define FT_RENDER_POOL_SIZE 16384L #define FT_RENDER_POOL_SIZE 16384L
@ -408,6 +435,8 @@ FT_BEGIN_HEADER
/* af_glyph_hints_dump_points */ /* af_glyph_hints_dump_points */
/* af_glyph_hints_dump_segments */ /* af_glyph_hints_dump_segments */
/* af_glyph_hints_dump_edges */ /* af_glyph_hints_dump_edges */
/* af_glyph_hints_get_num_segments */
/* af_glyph_hints_get_segment_offset */
/* */ /* */
/* As an argument, they use another global variable: */ /* As an argument, they use another global variable: */
/* */ /* */
@ -467,7 +496,21 @@ FT_BEGIN_HEADER
/* code will be used. */ /* code will be used. */
/* */ /* */
/* Setting this macro is needed for systems that prohibit address */ /* Setting this macro is needed for systems that prohibit address */
/* fixups, such as BREW. */ /* fixups, such as BREW. [Note that standard compilers like gcc or */
/* clang handle PIC generation automatically; you don't have to set */
/* FT_CONFIG_OPTION_PIC, which is only necessary for very special */
/* compilers.] */
/* */
/* Note that FT_CONFIG_OPTION_PIC support is not available for all */
/* modules (see `modules.cfg' for a complete list). For building with */
/* FT_CONFIG_OPTION_PIC support, do the following. */
/* */
/* 0. Clone the repository. */
/* 1. Define FT_CONFIG_OPTION_PIC. */
/* 2. Remove all subdirectories in `src' that don't have */
/* FT_CONFIG_OPTION_PIC support. */
/* 3. Comment out the corresponding modules in `modules.cfg'. */
/* 4. Compile. */
/* */ /* */
/* #define FT_CONFIG_OPTION_PIC */ /* #define FT_CONFIG_OPTION_PIC */
@ -514,7 +557,7 @@ FT_BEGIN_HEADER
/* does not contain any glyph name though. */ /* does not contain any glyph name though. */
/* */ /* */
/* Accessing SFNT names is done through the functions declared in */ /* Accessing SFNT names is done through the functions declared in */
/* `freetype/ftsnames.h'. */ /* `ftsnames.h'. */
/* */ /* */
#define TT_CONFIG_OPTION_SFNT_NAMES #define TT_CONFIG_OPTION_SFNT_NAMES
@ -555,92 +598,68 @@ FT_BEGIN_HEADER
/* Do not #undef this macro here, since the build system might */ /* Do not #undef this macro here, since the build system might */
/* define it for certain configurations only. */ /* define it for certain configurations only. */
/* */ /* */
/* #define TT_CONFIG_OPTION_BYTECODE_INTERPRETER */ #define TT_CONFIG_OPTION_BYTECODE_INTERPRETER
/*************************************************************************/ /*************************************************************************/
/* */ /* */
/* Define TT_CONFIG_OPTION_SUBPIXEL_HINTING if you want to compile */ /* Define TT_CONFIG_OPTION_SUBPIXEL_HINTING if you want to compile */
/* EXPERIMENTAL subpixel hinting support into the TrueType driver. This */ /* subpixel hinting support into the TrueType driver. This modifies the */
/* replaces the native TrueType hinting mechanism when anything but */ /* TrueType hinting mechanism when anything but FT_RENDER_MODE_MONO is */
/* FT_RENDER_MODE_MONO is requested. */ /* requested. */
/* */ /* */
/* Enabling this causes the TrueType driver to ignore instructions under */ /* In particular, it modifies the bytecode interpreter to interpret (or */
/* certain conditions. This is done in accordance with the guide here, */ /* not) instructions in a certain way so that all TrueType fonts look */
/* with some minor differences: */ /* like they do in a Windows ClearType (DirectWrite) environment. See */
/* [1] for a technical overview on what this means. See `ttinterp.h' */
/* for more details on the LEAN option. */
/* */ /* */
/* http://www.microsoft.com/typography/cleartype/truetypecleartype.aspx */ /* There are three possible values. */
/* */ /* */
/* By undefining this, you only compile the code necessary to hint */ /* Value 1: */
/* TrueType glyphs with native TT hinting. */ /* This value is associated with the `Infinality' moniker, */
/* contributed by an individual nicknamed Infinality with the goal of */
/* making TrueType fonts render better than on Windows. A high */
/* amount of configurability and flexibility, down to rules for */
/* single glyphs in fonts, but also very slow. Its experimental and */
/* slow nature and the original developer losing interest meant that */
/* this option was never enabled in default builds. */
/* */ /* */
/* This option requires TT_CONFIG_OPTION_BYTECODE_INTERPRETER to be */ /* The corresponding interpreter version is v38. */
/* defined. */
/* */ /* */
/* #define TT_CONFIG_OPTION_SUBPIXEL_HINTING */ /* Value 2: */
/* The new default mode for the TrueType driver. The Infinality code */
/* base was stripped to the bare minimum and all configurability */
/*************************************************************************/ /* removed in the name of speed and simplicity. The configurability */
/* was mainly aimed at legacy fonts like Arial, Times New Roman, or */
/* Courier. Legacy fonts are fonts that modify vertical stems to */
/* achieve clean black-and-white bitmaps. The new mode focuses on */
/* applying a minimal set of rules to all fonts indiscriminately so */
/* that modern and web fonts render well while legacy fonts render */
/* okay. */
/* */ /* */
/* If you define TT_CONFIG_OPTION_UNPATENTED_HINTING, a special version */ /* The corresponding interpreter version is v40. */
/* of the TrueType bytecode interpreter is used that doesn't implement */
/* any of the patented opcodes and algorithms. The patents related to */
/* TrueType hinting have expired worldwide since May 2010; this option */
/* is now deprecated. */
/* */ /* */
/* Note that the TT_CONFIG_OPTION_UNPATENTED_HINTING macro is *ignored* */ /* Value 3: */
/* if you define TT_CONFIG_OPTION_BYTECODE_INTERPRETER; in other words, */ /* Compile both, making both v38 and v40 available (the latter is the */
/* either define TT_CONFIG_OPTION_BYTECODE_INTERPRETER or */ /* default). */
/* TT_CONFIG_OPTION_UNPATENTED_HINTING but not both at the same time. */
/* */ /* */
/* This macro is only useful for a small number of font files (mostly */ /* By undefining these, you get rendering behavior like on Windows */
/* for Asian scripts) that require bytecode interpretation to properly */ /* without ClearType, i.e., Windows XP without ClearType enabled and */
/* load glyphs. For all other fonts, this produces unpleasant results, */ /* Win9x (interpreter version v35). Or not, depending on how much */
/* thus the unpatented interpreter is never used to load glyphs from */ /* hinting blood and testing tears the font designer put into a given */
/* TrueType fonts unless one of the following two options is used. */ /* font. If you define one or both subpixel hinting options, you can */
/* switch between between v35 and the ones you define (using */
/* `FT_Property_Set'). */
/* */ /* */
/* - The unpatented interpreter is explicitly activated by the user */ /* This option requires TT_CONFIG_OPTION_BYTECODE_INTERPRETER to be */
/* through the FT_PARAM_TAG_UNPATENTED_HINTING parameter tag */ /* defined. */
/* when opening the FT_Face. */
/* */ /* */
/* - FreeType detects that the FT_Face corresponds to one of the */ /* [1] https://www.microsoft.com/typography/cleartype/truetypecleartype.aspx */
/* `trick' fonts (e.g., `Mingliu') it knows about. The font engine */
/* contains a hard-coded list of font names and other matching */
/* parameters (see function `tt_face_init' in file */
/* `src/truetype/ttobjs.c'). */
/* */ /* */
/* Here a sample code snippet for using FT_PARAM_TAG_UNPATENTED_HINTING. */ /* #define TT_CONFIG_OPTION_SUBPIXEL_HINTING 1 */
/* */ #define TT_CONFIG_OPTION_SUBPIXEL_HINTING 2
/* { */ /* #define TT_CONFIG_OPTION_SUBPIXEL_HINTING ( 1 | 2 ) */
/* FT_Parameter parameter; */
/* FT_Open_Args open_args; */
/* */
/* */
/* parameter.tag = FT_PARAM_TAG_UNPATENTED_HINTING; */
/* */
/* open_args.flags = FT_OPEN_PATHNAME | FT_OPEN_PARAMS; */
/* open_args.pathname = my_font_pathname; */
/* open_args.num_params = 1; */
/* open_args.params = &parameter; */
/* */
/* error = FT_Open_Face( library, &open_args, index, &face ); */
/* ... */
/* } */
/* */
#define TT_CONFIG_OPTION_UNPATENTED_HINTING
/*************************************************************************/
/* */
/* Define TT_CONFIG_OPTION_INTERPRETER_SWITCH to compile the TrueType */
/* bytecode interpreter with a huge switch statement, rather than a call */
/* table. This results in smaller and faster code for a number of */
/* architectures. */
/* */
/* Note however that on some compiler/processor combinations, undefining */
/* this macro will generate faster, though larger, code. */
/* */
#define TT_CONFIG_OPTION_INTERPRETER_SWITCH
/*************************************************************************/ /*************************************************************************/
@ -656,8 +675,8 @@ FT_BEGIN_HEADER
/* composite flags array which can be used to disambiguate, but old */ /* composite flags array which can be used to disambiguate, but old */
/* fonts will not have them. */ /* fonts will not have them. */
/* */ /* */
/* http://www.microsoft.com/typography/otspec/glyf.htm */ /* https://www.microsoft.com/typography/otspec/glyf.htm */
/* http://fonts.apple.com/TTRefMan/RM06/Chap6glyf.html */ /* https://developer.apple.com/fonts/TrueType-Reference-Manual/RM06/Chap6glyf.html */
/* */ /* */
#undef TT_CONFIG_OPTION_COMPONENT_OFFSET_SCALED #undef TT_CONFIG_OPTION_COMPONENT_OFFSET_SCALED
@ -680,6 +699,24 @@ FT_BEGIN_HEADER
#define TT_CONFIG_OPTION_BDF #define TT_CONFIG_OPTION_BDF
/*************************************************************************/
/* */
/* Option TT_CONFIG_OPTION_MAX_RUNNABLE_OPCODES controls the maximum */
/* number of bytecode instructions executed for a single run of the */
/* bytecode interpreter, needed to prevent infinite loops. You don't */
/* want to change this except for very special situations (e.g., making */
/* a library fuzzer spend less time to handle broken fonts). */
/* */
/* It is not expected that this value is ever modified by a configuring */
/* script; instead, it gets surrounded with #ifndef ... #endif so that */
/* the value can be set as a preprocessor option on the compiler's */
/* command line. */
/* */
#ifndef TT_CONFIG_OPTION_MAX_RUNNABLE_OPCODES
#define TT_CONFIG_OPTION_MAX_RUNNABLE_OPCODES 1000000L
#endif
/*************************************************************************/ /*************************************************************************/
/*************************************************************************/ /*************************************************************************/
/**** ****/ /**** ****/
@ -735,6 +772,86 @@ FT_BEGIN_HEADER
#undef T1_CONFIG_OPTION_NO_MM_SUPPORT #undef T1_CONFIG_OPTION_NO_MM_SUPPORT
/*************************************************************************/
/* */
/* T1_CONFIG_OPTION_OLD_ENGINE controls whether the pre-Adobe Type 1 */
/* engine gets compiled into FreeType. If defined, it is possible to */
/* switch between the two engines using the `hinting-engine' property of */
/* the type1 driver module. */
/* */
/* #define T1_CONFIG_OPTION_OLD_ENGINE */
/*************************************************************************/
/*************************************************************************/
/**** ****/
/**** C F F D R I V E R C O N F I G U R A T I O N ****/
/**** ****/
/*************************************************************************/
/*************************************************************************/
/*************************************************************************/
/* */
/* Using CFF_CONFIG_OPTION_DARKENING_PARAMETER_{X,Y}{1,2,3,4} it is */
/* possible to set up the default values of the four control points that */
/* define the stem darkening behaviour of the (new) CFF engine. For */
/* more details please read the documentation of the */
/* `darkening-parameters' property (file `ftdriver.h'), which allows the */
/* control at run-time. */
/* */
/* Do *not* undefine these macros! */
/* */
#define CFF_CONFIG_OPTION_DARKENING_PARAMETER_X1 500
#define CFF_CONFIG_OPTION_DARKENING_PARAMETER_Y1 400
#define CFF_CONFIG_OPTION_DARKENING_PARAMETER_X2 1000
#define CFF_CONFIG_OPTION_DARKENING_PARAMETER_Y2 275
#define CFF_CONFIG_OPTION_DARKENING_PARAMETER_X3 1667
#define CFF_CONFIG_OPTION_DARKENING_PARAMETER_Y3 275
#define CFF_CONFIG_OPTION_DARKENING_PARAMETER_X4 2333
#define CFF_CONFIG_OPTION_DARKENING_PARAMETER_Y4 0
/*************************************************************************/
/* */
/* CFF_CONFIG_OPTION_OLD_ENGINE controls whether the pre-Adobe CFF */
/* engine gets compiled into FreeType. If defined, it is possible to */
/* switch between the two engines using the `hinting-engine' property of */
/* the cff driver module. */
/* */
/* #define CFF_CONFIG_OPTION_OLD_ENGINE */
/*************************************************************************/
/*************************************************************************/
/**** ****/
/**** P C F D R I V E R C O N F I G U R A T I O N ****/
/**** ****/
/*************************************************************************/
/*************************************************************************/
/*************************************************************************/
/* */
/* There are many PCF fonts just called `Fixed' which look completely */
/* different, and which have nothing to do with each other. When */
/* selecting `Fixed' in KDE or Gnome one gets results that appear rather */
/* random, the style changes often if one changes the size and one */
/* cannot select some fonts at all. This option makes the PCF module */
/* prepend the foundry name (plus a space) to the family name. */
/* */
/* We also check whether we have `wide' characters; all put together, we */
/* get family names like `Sony Fixed' or `Misc Fixed Wide'. */
/* */
/* If this option is activated, it can be controlled with the */
/* `no-long-family-names' property of the pcf driver module. */
/* */
/* #define PCF_CONFIG_OPTION_LONG_FAMILY_NAMES */
/*************************************************************************/ /*************************************************************************/
/*************************************************************************/ /*************************************************************************/
/**** ****/ /**** ****/
@ -753,7 +870,9 @@ FT_BEGIN_HEADER
/*************************************************************************/ /*************************************************************************/
/* */ /* */
/* Compile autofit module with Indic script support. */ /* Compile autofit module with fallback Indic script support, covering */
/* some scripts that the `latin' submodule of the autofit module doesn't */
/* (yet) handle. */
/* */ /* */
#define AF_CONFIG_OPTION_INDIC #define AF_CONFIG_OPTION_INDIC
@ -765,63 +884,94 @@ FT_BEGIN_HEADER
/* grid. To find out the optimal scaling and shifting value, various */ /* grid. To find out the optimal scaling and shifting value, various */
/* parameter combinations are tried and scored. */ /* parameter combinations are tried and scored. */
/* */ /* */
/* This experimental option is only active if the render mode is */ /* This experimental option is active only if the rendering mode is */
/* FT_RENDER_MODE_LIGHT. */ /* FT_RENDER_MODE_LIGHT; you can switch warping on and off with the */
/* `warping' property of the auto-hinter (see file `ftdriver.h' for more */
/* information; by default it is switched off). */
/* */ /* */
/* #define AF_CONFIG_OPTION_USE_WARPER */ #define AF_CONFIG_OPTION_USE_WARPER
/*************************************************************************/
/* */
/* Use TrueType-like size metrics for `light' auto-hinting. */
/* */
/* It is strongly recommended to avoid this option, which exists only to */
/* help some legacy applications retain its appearance and behaviour */
/* with respect to auto-hinted TrueType fonts. */
/* */
/* The very reason this option exists at all are GNU/Linux distributions */
/* like Fedora that did not un-patch the following change (which was */
/* present in FreeType between versions 2.4.6 and 2.7.1, inclusive). */
/* */
/* 2011-07-16 Steven Chu <steven.f.chu@gmail.com> */
/* */
/* [truetype] Fix metrics on size request for scalable fonts. */
/* */
/* This problematic commit is now reverted (more or less). */
/* */
/* #define AF_CONFIG_OPTION_TT_SIZE_METRICS */
/* */ /* */
/* /*
* Define this variable if you want to keep the layout of internal * This macro is obsolete. Support has been removed in FreeType
* structures that was used prior to FreeType 2.2. This also compiles in * version 2.5.
* a few obsolete functions to avoid linking problems on typical Unix
* distributions.
*
* For embedded systems or building a new distribution from scratch, it
* is recommended to disable the macro since it reduces the library's code
* size and activates a few memory-saving optimizations as well.
*/ */
/* #define FT_CONFIG_OPTION_OLD_INTERNALS */ /* #define FT_CONFIG_OPTION_OLD_INTERNALS */
/* /*
* To detect legacy cache-lookup call from a rogue client (<= 2.1.7), * This macro is defined if native TrueType hinting is requested by the
* we restrict the number of charmaps in a font. The current API of * definitions above.
* FTC_CMapCache_Lookup() takes cmap_index & charcode, but old API
* takes charcode only. To determine the passed value is for cmap_index
* or charcode, the possible cmap_index is restricted not to exceed
* the minimum possible charcode by a rogue client. It is also very
* unlikely that a rogue client is interested in Unicode values 0 to 15.
*
* NOTE: The original threshold was 4 deduced from popular number of
* cmap subtables in UCS-4 TrueType fonts, but now it is not
* irregular for OpenType fonts to have more than 4 subtables,
* because variation selector subtables are available for Apple
* and Microsoft platforms.
*/ */
#ifdef TT_CONFIG_OPTION_BYTECODE_INTERPRETER
#define TT_USE_BYTECODE_INTERPRETER
#ifdef FT_CONFIG_OPTION_OLD_INTERNALS #ifdef TT_CONFIG_OPTION_SUBPIXEL_HINTING
#define FT_MAX_CHARMAP_CACHEABLE 15 #if TT_CONFIG_OPTION_SUBPIXEL_HINTING & 1
#define TT_SUPPORT_SUBPIXEL_HINTING_INFINALITY
#endif
#if TT_CONFIG_OPTION_SUBPIXEL_HINTING & 2
#define TT_SUPPORT_SUBPIXEL_HINTING_MINIMAL
#endif
#endif
#endif #endif
/* /*
* This macro is defined if either unpatented or native TrueType * Check CFF darkening parameters. The checks are the same as in function
* hinting is requested by the definitions above. * `cff_property_set' in file `cffdrivr.c'.
*/ */
#ifdef TT_CONFIG_OPTION_BYTECODE_INTERPRETER #if CFF_CONFIG_OPTION_DARKENING_PARAMETER_X1 < 0 || \
#define TT_USE_BYTECODE_INTERPRETER CFF_CONFIG_OPTION_DARKENING_PARAMETER_X2 < 0 || \
#undef TT_CONFIG_OPTION_UNPATENTED_HINTING CFF_CONFIG_OPTION_DARKENING_PARAMETER_X3 < 0 || \
#elif defined TT_CONFIG_OPTION_UNPATENTED_HINTING CFF_CONFIG_OPTION_DARKENING_PARAMETER_X4 < 0 || \
#define TT_USE_BYTECODE_INTERPRETER \
CFF_CONFIG_OPTION_DARKENING_PARAMETER_Y1 < 0 || \
CFF_CONFIG_OPTION_DARKENING_PARAMETER_Y2 < 0 || \
CFF_CONFIG_OPTION_DARKENING_PARAMETER_Y3 < 0 || \
CFF_CONFIG_OPTION_DARKENING_PARAMETER_Y4 < 0 || \
\
CFF_CONFIG_OPTION_DARKENING_PARAMETER_X1 > \
CFF_CONFIG_OPTION_DARKENING_PARAMETER_X2 || \
CFF_CONFIG_OPTION_DARKENING_PARAMETER_X2 > \
CFF_CONFIG_OPTION_DARKENING_PARAMETER_X3 || \
CFF_CONFIG_OPTION_DARKENING_PARAMETER_X3 > \
CFF_CONFIG_OPTION_DARKENING_PARAMETER_X4 || \
\
CFF_CONFIG_OPTION_DARKENING_PARAMETER_Y1 > 500 || \
CFF_CONFIG_OPTION_DARKENING_PARAMETER_Y2 > 500 || \
CFF_CONFIG_OPTION_DARKENING_PARAMETER_Y3 > 500 || \
CFF_CONFIG_OPTION_DARKENING_PARAMETER_Y4 > 500
#error "Invalid CFF darkening parameters!"
#endif #endif
FT_END_HEADER FT_END_HEADER
#endif /* __FTOPTION_H__ */ #endif /* FTOPTION_H_ */
/* END */ /* END */

View File

@ -5,7 +5,7 @@
/* ANSI-specific library and header configuration file (specification */ /* ANSI-specific library and header configuration file (specification */
/* only). */ /* only). */
/* */ /* */
/* Copyright 2002-2007, 2009, 2011-2012 by */ /* Copyright 2002-2018 by */
/* David Turner, Robert Wilhelm, and Werner Lemberg. */ /* David Turner, Robert Wilhelm, and Werner Lemberg. */
/* */ /* */
/* This file is part of the FreeType project, and may only be used, */ /* This file is part of the FreeType project, and may only be used, */
@ -23,14 +23,13 @@
/* FreeType normally requires. It also defines macros to rename the */ /* FreeType normally requires. It also defines macros to rename the */
/* standard functions within the FreeType source code. */ /* standard functions within the FreeType source code. */
/* */ /* */
/* Load a file which defines __FTSTDLIB_H__ before this one to override */ /* Load a file which defines FTSTDLIB_H_ before this one to override it. */
/* it. */
/* */ /* */
/*************************************************************************/ /*************************************************************************/
#ifndef __FTSTDLIB_H__ #ifndef FTSTDLIB_H_
#define __FTSTDLIB_H__ #define FTSTDLIB_H_
#include <stddef.h> #include <stddef.h>
@ -64,6 +63,8 @@
#define FT_INT_MAX INT_MAX #define FT_INT_MAX INT_MAX
#define FT_INT_MIN INT_MIN #define FT_INT_MIN INT_MIN
#define FT_UINT_MAX UINT_MAX #define FT_UINT_MAX UINT_MAX
#define FT_LONG_MIN LONG_MIN
#define FT_LONG_MAX LONG_MAX
#define FT_ULONG_MAX ULONG_MAX #define FT_ULONG_MAX ULONG_MAX
@ -141,8 +142,8 @@
/**********************************************************************/ /**********************************************************************/
#define ft_atol atol #define ft_strtol strtol
#define ft_labs labs #define ft_getenv getenv
/**********************************************************************/ /**********************************************************************/
@ -168,7 +169,7 @@
#include <stdarg.h> #include <stdarg.h>
#endif /* __FTSTDLIB_H__ */ #endif /* FTSTDLIB_H_ */
/* END */ /* END */

File diff suppressed because it is too large Load Diff

View File

@ -4,7 +4,7 @@
/* */ /* */
/* Quick computation of advance widths (specification only). */ /* Quick computation of advance widths (specification only). */
/* */ /* */
/* Copyright 2008 by */ /* Copyright 2008-2018 by */
/* David Turner, Robert Wilhelm, and Werner Lemberg. */ /* David Turner, Robert Wilhelm, and Werner Lemberg. */
/* */ /* */
/* This file is part of the FreeType project, and may only be used, */ /* This file is part of the FreeType project, and may only be used, */
@ -16,8 +16,8 @@
/***************************************************************************/ /***************************************************************************/
#ifndef __FTADVANC_H__ #ifndef FTADVANC_H_
#define __FTADVANC_H__ #define FTADVANC_H_
#include <ft2build.h> #include <ft2build.h>
@ -48,6 +48,11 @@ FT_BEGIN_HEADER
* @description: * @description:
* This section contains functions to quickly extract advance values * This section contains functions to quickly extract advance values
* without handling glyph outlines, if possible. * without handling glyph outlines, if possible.
*
* @order:
* FT_Get_Advance
* FT_Get_Advances
*
*/ */
@ -64,15 +69,15 @@ FT_BEGIN_HEADER
/* corresponding hinting mode or font driver doesn't allow for very */ /* corresponding hinting mode or font driver doesn't allow for very */
/* quick advance computation. */ /* quick advance computation. */
/* */ /* */
/* Typically, glyphs which are either unscaled, unhinted, bitmapped, */ /* Typically, glyphs that are either unscaled, unhinted, bitmapped, */
/* or light-hinted can have their advance width computed very */ /* or light-hinted can have their advance width computed very */
/* quickly. */ /* quickly. */
/* */ /* */
/* Normal and bytecode hinted modes, which require loading, scaling, */ /* Normal and bytecode hinted modes that require loading, scaling, */
/* and hinting of the glyph outline, are extremely slow by */ /* and hinting of the glyph outline, are extremely slow by */
/* comparison. */ /* comparison. */
/* */ /* */
#define FT_ADVANCE_FLAG_FAST_ONLY 0x20000000UL #define FT_ADVANCE_FLAG_FAST_ONLY 0x20000000L
/*************************************************************************/ /*************************************************************************/
@ -82,8 +87,7 @@ FT_BEGIN_HEADER
/* */ /* */
/* <Description> */ /* <Description> */
/* Retrieve the advance value of a given glyph outline in an */ /* Retrieve the advance value of a given glyph outline in an */
/* @FT_Face. By default, the unhinted advance is returned in font */ /* @FT_Face. */
/* units. */
/* */ /* */
/* <Input> */ /* <Input> */
/* face :: The source @FT_Face handle. */ /* face :: The source @FT_Face handle. */
@ -94,8 +98,9 @@ FT_BEGIN_HEADER
/* calling @FT_Load_Glyph, used to determine what kind */ /* calling @FT_Load_Glyph, used to determine what kind */
/* of advances you need. */ /* of advances you need. */
/* <Output> */ /* <Output> */
/* padvance :: The advance value, in either font units or 16.16 */ /* padvance :: The advance value. If scaling is performed (based on */
/* format. */ /* the value of `load_flags'), the advance value is in */
/* 16.16 format. Otherwise, it is in font units. */
/* */ /* */
/* If @FT_LOAD_VERTICAL_LAYOUT is set, this is the */ /* If @FT_LOAD_VERTICAL_LAYOUT is set, this is the */
/* vertical advance corresponding to a vertical layout. */ /* vertical advance corresponding to a vertical layout. */
@ -127,8 +132,7 @@ FT_BEGIN_HEADER
/* */ /* */
/* <Description> */ /* <Description> */
/* Retrieve the advance values of several glyph outlines in an */ /* Retrieve the advance values of several glyph outlines in an */
/* @FT_Face. By default, the unhinted advances are returned in font */ /* @FT_Face. */
/* units. */
/* */ /* */
/* <Input> */ /* <Input> */
/* face :: The source @FT_Face handle. */ /* face :: The source @FT_Face handle. */
@ -141,8 +145,12 @@ FT_BEGIN_HEADER
/* calling @FT_Load_Glyph. */ /* calling @FT_Load_Glyph. */
/* */ /* */
/* <Output> */ /* <Output> */
/* padvance :: The advances, in either font units or 16.16 format. */ /* padvance :: The advance values. This array, to be provided by the */
/* This array must contain at least `count' elements. */ /* caller, must contain at least `count' elements. */
/* */
/* If scaling is performed (based on the value of */
/* `load_flags'), the advance values are in 16.16 format. */
/* Otherwise, they are in font units. */
/* */ /* */
/* If @FT_LOAD_VERTICAL_LAYOUT is set, these are the */ /* If @FT_LOAD_VERTICAL_LAYOUT is set, these are the */
/* vertical advances corresponding to a vertical layout. */ /* vertical advances corresponding to a vertical layout. */
@ -168,12 +176,12 @@ FT_BEGIN_HEADER
FT_Int32 load_flags, FT_Int32 load_flags,
FT_Fixed *padvances ); FT_Fixed *padvances );
/* */ /* */
FT_END_HEADER FT_END_HEADER
#endif /* __FTADVANC_H__ */ #endif /* FTADVANC_H_ */
/* END */ /* END */

View File

@ -1,349 +0,0 @@
/***************************************************************************/
/* */
/* ftautoh.h */
/* */
/* FreeType API for controlling the auto-hinter (specification only). */
/* */
/* Copyright 2012 by */
/* David Turner, Robert Wilhelm, and Werner Lemberg. */
/* */
/* This file is part of the FreeType project, and may only be used, */
/* modified, and distributed under the terms of the FreeType project */
/* license, LICENSE.TXT. By continuing to use, modify, or distribute */
/* this file you indicate that you have read the license and */
/* understand and accept it fully. */
/* */
/***************************************************************************/
#ifndef __FTAUTOH_H__
#define __FTAUTOH_H__
#include <ft2build.h>
#include FT_FREETYPE_H
#ifdef FREETYPE_H
#error "freetype.h of FreeType 1 has been loaded!"
#error "Please fix the directory search order for header files"
#error "so that freetype.h of FreeType 2 is found first."
#endif
FT_BEGIN_HEADER
/**************************************************************************
*
* @section:
* auto_hinter
*
* @title:
* The auto-hinter
*
* @abstract:
* Controlling the auto-hinting module.
*
* @description:
* While FreeType's auto-hinter doesn't expose API functions by itself,
* it is possible to control its behaviour with @FT_Property_Set and
* @FT_Property_Get. The following lists the available properties
* together with the necessary macros and structures.
*
* Note that the auto-hinter's module name is `autofitter' for
* historical reasons.
*
*/
/**************************************************************************
*
* @property:
* glyph-to-script-map
*
* @description:
* The auto-hinter provides various script modules to hint glyphs.
* Examples of supported scripts are Latin or CJK. Before a glyph is
* auto-hinted, the Unicode character map of the font gets examined, and
* the script is then determined based on Unicode character ranges, see
* below.
*
* OpenType fonts, however, often provide much more glyphs than
* character codes (small caps, superscripts, ligatures, swashes, etc.),
* to be controlled by so-called `features'. Handling OpenType features
* can be quite complicated and thus needs a separate library on top of
* FreeType.
*
* The mapping between glyph indices and scripts (in the auto-hinter
* sense, see the @FT_AUTOHINTER_SCRIPT_XXX values) is stored as an
* array with `num_glyphs' elements, as found in the font's @FT_Face
* structure. The `glyph-to-script-map' property returns a pointer to
* this array which can be modified as needed. Note that the
* modification should happen before the first glyph gets processed by
* the auto-hinter so that the global analysis of the font shapes
* actually uses the modified mapping.
*
* The following example code demonstrates how to access it (omitting
* the error handling).
*
* {
* FT_Library library;
* FT_Face face;
* FT_Prop_GlyphToScriptMap prop;
*
*
* FT_Init_FreeType( &library );
* FT_New_Face( library, "foo.ttf", 0, &face );
*
* prop.face = face;
*
* FT_Property_Get( library, "autofitter",
* "glyph-to-script-map", &prop );
*
* // adjust `prop.map' as needed right here
*
* FT_Load_Glyph( face, ..., FT_LOAD_FORCE_AUTOHINT );
* }
*
*/
/**************************************************************************
*
* @enum:
* FT_AUTOHINTER_SCRIPT_XXX
*
* @description:
* A list of constants used for the @glyph-to-script-map property to
* specify the script submodule the auto-hinter should use for hinting a
* particular glyph.
*
* @values:
* FT_AUTOHINTER_SCRIPT_NONE ::
* Don't auto-hint this glyph.
*
* FT_AUTOHINTER_SCRIPT_LATIN ::
* Apply the latin auto-hinter. For the auto-hinter, `latin' is a
* very broad term, including Cyrillic and Greek also since characters
* from those scripts share the same design constraints.
*
* By default, characters from the following Unicode ranges are
* assigned to this submodule.
*
* {
* U+0020 - U+007F // Basic Latin (no control characters)
* U+00A0 - U+00FF // Latin-1 Supplement (no control characters)
* U+0100 - U+017F // Latin Extended-A
* U+0180 - U+024F // Latin Extended-B
* U+0250 - U+02AF // IPA Extensions
* U+02B0 - U+02FF // Spacing Modifier Letters
* U+0300 - U+036F // Combining Diacritical Marks
* U+0370 - U+03FF // Greek and Coptic
* U+0400 - U+04FF // Cyrillic
* U+0500 - U+052F // Cyrillic Supplement
* U+1D00 - U+1D7F // Phonetic Extensions
* U+1D80 - U+1DBF // Phonetic Extensions Supplement
* U+1DC0 - U+1DFF // Combining Diacritical Marks Supplement
* U+1E00 - U+1EFF // Latin Extended Additional
* U+1F00 - U+1FFF // Greek Extended
* U+2000 - U+206F // General Punctuation
* U+2070 - U+209F // Superscripts and Subscripts
* U+20A0 - U+20CF // Currency Symbols
* U+2150 - U+218F // Number Forms
* U+2460 - U+24FF // Enclosed Alphanumerics
* U+2C60 - U+2C7F // Latin Extended-C
* U+2DE0 - U+2DFF // Cyrillic Extended-A
* U+2E00 - U+2E7F // Supplemental Punctuation
* U+A640 - U+A69F // Cyrillic Extended-B
* U+A720 - U+A7FF // Latin Extended-D
* U+FB00 - U+FB06 // Alphab. Present. Forms (Latin Ligatures)
* U+1D400 - U+1D7FF // Mathematical Alphanumeric Symbols
* U+1F100 - U+1F1FF // Enclosed Alphanumeric Supplement
* }
*
* FT_AUTOHINTER_SCRIPT_CJK ::
* Apply the CJK auto-hinter, covering Chinese, Japanese, Korean, old
* Vietnamese, and some other scripts.
*
* By default, characters from the following Unicode ranges are
* assigned to this submodule.
*
* {
* U+1100 - U+11FF // Hangul Jamo
* U+2E80 - U+2EFF // CJK Radicals Supplement
* U+2F00 - U+2FDF // Kangxi Radicals
* U+2FF0 - U+2FFF // Ideographic Description Characters
* U+3000 - U+303F // CJK Symbols and Punctuation
* U+3040 - U+309F // Hiragana
* U+30A0 - U+30FF // Katakana
* U+3100 - U+312F // Bopomofo
* U+3130 - U+318F // Hangul Compatibility Jamo
* U+3190 - U+319F // Kanbun
* U+31A0 - U+31BF // Bopomofo Extended
* U+31C0 - U+31EF // CJK Strokes
* U+31F0 - U+31FF // Katakana Phonetic Extensions
* U+3200 - U+32FF // Enclosed CJK Letters and Months
* U+3300 - U+33FF // CJK Compatibility
* U+3400 - U+4DBF // CJK Unified Ideographs Extension A
* U+4DC0 - U+4DFF // Yijing Hexagram Symbols
* U+4E00 - U+9FFF // CJK Unified Ideographs
* U+A960 - U+A97F // Hangul Jamo Extended-A
* U+AC00 - U+D7AF // Hangul Syllables
* U+D7B0 - U+D7FF // Hangul Jamo Extended-B
* U+F900 - U+FAFF // CJK Compatibility Ideographs
* U+FE10 - U+FE1F // Vertical forms
* U+FE30 - U+FE4F // CJK Compatibility Forms
* U+FF00 - U+FFEF // Halfwidth and Fullwidth Forms
* U+1B000 - U+1B0FF // Kana Supplement
* U+1D300 - U+1D35F // Tai Xuan Hing Symbols
* U+1F200 - U+1F2FF // Enclosed Ideographic Supplement
* U+20000 - U+2A6DF // CJK Unified Ideographs Extension B
* U+2A700 - U+2B73F // CJK Unified Ideographs Extension C
* U+2B740 - U+2B81F // CJK Unified Ideographs Extension D
* U+2F800 - U+2FA1F // CJK Compatibility Ideographs Supplement
* }
*
* FT_AUTOHINTER_SCRIPT_INDIC ::
* Apply the indic auto-hinter, covering all major scripts from the
* Indian sub-continent and some other related scripts like Thai, Lao,
* or Tibetan.
*
* By default, characters from the following Unicode ranges are
* assigned to this submodule.
*
* {
* U+0900 - U+0DFF // Indic Range
* U+0F00 - U+0FFF // Tibetan
* U+1900 - U+194F // Limbu
* U+1B80 - U+1BBF // Sundanese
* U+1C80 - U+1CDF // Meetei Mayak
* U+A800 - U+A82F // Syloti Nagri
* U+11800 - U+118DF // Sharada
* }
*
* Note that currently Indic support is rudimentary only, missing blue
* zone support.
*
*/
#define FT_AUTOHINTER_SCRIPT_NONE 0
#define FT_AUTOHINTER_SCRIPT_LATIN 1
#define FT_AUTOHINTER_SCRIPT_CJK 2
#define FT_AUTOHINTER_SCRIPT_INDIC 3
/**************************************************************************
*
* @struct:
* FT_Prop_GlyphToScriptMap
*
* @description:
* The data exchange structure for the @glyph-to-script-map property.
*
*/
typedef struct FT_Prop_GlyphToScriptMap_
{
FT_Face face;
FT_Byte* map;
} FT_Prop_GlyphToScriptMap;
/**************************************************************************
*
* @property:
* fallback-script
*
* @description:
* If no auto-hinter script module can be assigned to a glyph, a
* fallback script gets assigned to it (see also the
* @glyph-to-script-map property). By default, this is
* @FT_AUTOHINTER_SCRIPT_CJK. Using the `fallback-script' property,
* this fallback value can be changed.
*
* {
* FT_Library library;
* FT_UInt fallback_script = FT_AUTOHINTER_SCRIPT_NONE;
*
*
* FT_Init_FreeType( &library );
*
* FT_Property_Set( library, "autofitter",
* "fallback-script", &fallback_script );
* }
*
* @note:
* This property can be used with @FT_Property_Get also.
*
* It's important to use the right timing for changing this value: The
* creation of the glyph-to-script map which eventually uses the
* fallback script value gets triggered either by setting or reading a
* face-specific property like @glyph-to-script-map, or by auto-hinting
* any glyph from that face. In particular, if you have already created
* an @FT_Face structure but not loaded any glyph (using the
* auto-hinter), a change of the fallback glyph will affect this face.
*
*/
/**************************************************************************
*
* @property:
* increase-x-height
*
* @description:
* For ppem values in the range 6~<= ppem <= `increase-x-height', round
* up the font's x~height much more often than normally. If the value
* is set to~0, which is the default, this feature is switched off. Use
* this property to improve the legibility of small font sizes if
* necessary.
*
* {
* FT_Library library;
* FT_Face face;
* FT_Prop_IncreaseXHeight prop;
*
*
* FT_Init_FreeType( &library );
* FT_New_Face( library, "foo.ttf", 0, &face );
* FT_Set_Char_Size( face, 10 * 64, 0, 72, 0 );
*
* prop.face = face;
* prop.limit = 14;
*
* FT_Property_Set( library, "autofitter",
* "increase-x-height", &prop );
* }
*
* @note:
* This property can be used with @FT_Property_Get also.
*
* Set this value right after calling @FT_Set_Char_Size, but before
* loading any glyph (using the auto-hinter).
*
*/
/**************************************************************************
*
* @struct:
* FT_Prop_IncreaseXHeight
*
* @description:
* The data exchange structure for the @increase-x-height property.
*
*/
typedef struct FT_Prop_IncreaseXHeight_
{
FT_Face face;
FT_UInt limit;
} FT_Prop_IncreaseXHeight;
/* */
FT_END_HEADER
#endif /* __FTAUTOH_H__ */
/* END */

View File

@ -4,7 +4,7 @@
/* */ /* */
/* FreeType exact bbox computation (specification). */ /* FreeType exact bbox computation (specification). */
/* */ /* */
/* Copyright 1996-2001, 2003, 2007, 2011 by */ /* Copyright 1996-2018 by */
/* David Turner, Robert Wilhelm, and Werner Lemberg. */ /* David Turner, Robert Wilhelm, and Werner Lemberg. */
/* */ /* */
/* This file is part of the FreeType project, and may only be used, */ /* This file is part of the FreeType project, and may only be used, */
@ -27,8 +27,8 @@
/*************************************************************************/ /*************************************************************************/
#ifndef __FTBBOX_H__ #ifndef FTBBOX_H_
#define __FTBBOX_H__ #define FTBBOX_H_
#include <ft2build.h> #include <ft2build.h>
@ -60,8 +60,8 @@ FT_BEGIN_HEADER
/* <Description> */ /* <Description> */
/* Compute the exact bounding box of an outline. This is slower */ /* Compute the exact bounding box of an outline. This is slower */
/* than computing the control box. However, it uses an advanced */ /* than computing the control box. However, it uses an advanced */
/* algorithm which returns _very_ quickly when the two boxes */ /* algorithm that returns _very_ quickly when the two boxes */
/* coincide. Otherwise, the outline Bézier arcs are traversed to */ /* coincide. Otherwise, the outline Bezier arcs are traversed to */
/* extract their extrema. */ /* extract their extrema. */
/* */ /* */
/* <Input> */ /* <Input> */
@ -78,20 +78,19 @@ FT_BEGIN_HEADER
/* @FT_LOAD_NO_SCALE, the resulting BBox is meaningless. To get */ /* @FT_LOAD_NO_SCALE, the resulting BBox is meaningless. To get */
/* reasonable values for the BBox it is necessary to load the glyph */ /* reasonable values for the BBox it is necessary to load the glyph */
/* at a large ppem value (so that the hinting instructions can */ /* at a large ppem value (so that the hinting instructions can */
/* properly shift and scale the subglyphs), then extracting the BBox */ /* properly shift and scale the subglyphs), then extracting the BBox, */
/* which can be eventually converted back to font units. */ /* which can be eventually converted back to font units. */
/* */ /* */
FT_EXPORT( FT_Error ) FT_EXPORT( FT_Error )
FT_Outline_Get_BBox( FT_Outline* outline, FT_Outline_Get_BBox( FT_Outline* outline,
FT_BBox *abbox ); FT_BBox *abbox );
/* */ /* */
FT_END_HEADER FT_END_HEADER
#endif /* __FTBBOX_H__ */ #endif /* FTBBOX_H_ */
/* END */ /* END */

View File

@ -4,7 +4,7 @@
/* */ /* */
/* FreeType API for accessing BDF-specific strings (specification). */ /* FreeType API for accessing BDF-specific strings (specification). */
/* */ /* */
/* Copyright 2002, 2003, 2004, 2006, 2009 by */ /* Copyright 2002-2018 by */
/* David Turner, Robert Wilhelm, and Werner Lemberg. */ /* David Turner, Robert Wilhelm, and Werner Lemberg. */
/* */ /* */
/* This file is part of the FreeType project, and may only be used, */ /* This file is part of the FreeType project, and may only be used, */
@ -16,8 +16,8 @@
/***************************************************************************/ /***************************************************************************/
#ifndef __FTBDF_H__ #ifndef FTBDF_H_
#define __FTBDF_H__ #define FTBDF_H_
#include <ft2build.h> #include <ft2build.h>
#include FT_FREETYPE_H #include FT_FREETYPE_H
@ -53,7 +53,7 @@ FT_BEGIN_HEADER
/********************************************************************** /**********************************************************************
* *
* @enum: * @enum:
* FT_PropertyType * BDF_PropertyType
* *
* @description: * @description:
* A list of BDF property types. * A list of BDF property types.
@ -106,7 +106,8 @@ FT_BEGIN_HEADER
* The property type. * The property type.
* *
* u.atom :: * u.atom ::
* The atom string, if type is @BDF_PROPERTY_TYPE_ATOM. * The atom string, if type is @BDF_PROPERTY_TYPE_ATOM. May be
* NULL, indicating an empty string.
* *
* u.integer :: * u.integer ::
* A signed integer, if type is @BDF_PROPERTY_TYPE_INTEGER. * A signed integer, if type is @BDF_PROPERTY_TYPE_INTEGER.
@ -199,11 +200,11 @@ FT_BEGIN_HEADER
const char* prop_name, const char* prop_name,
BDF_PropertyRec *aproperty ); BDF_PropertyRec *aproperty );
/* */ /* */
FT_END_HEADER FT_END_HEADER
#endif /* __FTBDF_H__ */ #endif /* FTBDF_H_ */
/* END */ /* END */

View File

@ -4,7 +4,7 @@
/* */ /* */
/* FreeType utility functions for bitmaps (specification). */ /* FreeType utility functions for bitmaps (specification). */
/* */ /* */
/* Copyright 2004, 2005, 2006, 2008 by */ /* Copyright 2004-2018 by */
/* David Turner, Robert Wilhelm, and Werner Lemberg. */ /* David Turner, Robert Wilhelm, and Werner Lemberg. */
/* */ /* */
/* This file is part of the FreeType project, and may only be used, */ /* This file is part of the FreeType project, and may only be used, */
@ -16,8 +16,8 @@
/***************************************************************************/ /***************************************************************************/
#ifndef __FTBITMAP_H__ #ifndef FTBITMAP_H_
#define __FTBITMAP_H__ #define FTBITMAP_H_
#include <ft2build.h> #include <ft2build.h>
@ -45,7 +45,9 @@ FT_BEGIN_HEADER
/* Handling FT_Bitmap objects. */ /* Handling FT_Bitmap objects. */
/* */ /* */
/* <Description> */ /* <Description> */
/* This section contains functions for converting FT_Bitmap objects. */ /* This section contains functions for handling @FT_Bitmap objects. */
/* Note that none of the functions changes the bitmap's `flow' (as */
/* indicated by the sign of the `pitch' field in `FT_Bitmap'). */
/* */ /* */
/*************************************************************************/ /*************************************************************************/
@ -53,7 +55,7 @@ FT_BEGIN_HEADER
/*************************************************************************/ /*************************************************************************/
/* */ /* */
/* <Function> */ /* <Function> */
/* FT_Bitmap_New */ /* FT_Bitmap_Init */
/* */ /* */
/* <Description> */ /* <Description> */
/* Initialize a pointer to an @FT_Bitmap structure. */ /* Initialize a pointer to an @FT_Bitmap structure. */
@ -61,6 +63,14 @@ FT_BEGIN_HEADER
/* <InOut> */ /* <InOut> */
/* abitmap :: A pointer to the bitmap structure. */ /* abitmap :: A pointer to the bitmap structure. */
/* */ /* */
/* <Note> */
/* A deprecated name for the same function is `FT_Bitmap_New'. */
/* */
FT_EXPORT( void )
FT_Bitmap_Init( FT_Bitmap *abitmap );
/* deprecated */
FT_EXPORT( void ) FT_EXPORT( void )
FT_Bitmap_New( FT_Bitmap *abitmap ); FT_Bitmap_New( FT_Bitmap *abitmap );
@ -87,7 +97,7 @@ FT_BEGIN_HEADER
FT_EXPORT( FT_Error ) FT_EXPORT( FT_Error )
FT_Bitmap_Copy( FT_Library library, FT_Bitmap_Copy( FT_Library library,
const FT_Bitmap *source, const FT_Bitmap *source,
FT_Bitmap *target); FT_Bitmap *target );
/*************************************************************************/ /*************************************************************************/
@ -122,6 +132,9 @@ FT_BEGIN_HEADER
/* If you want to embolden the bitmap owned by a @FT_GlyphSlotRec, */ /* If you want to embolden the bitmap owned by a @FT_GlyphSlotRec, */
/* you should call @FT_GlyphSlot_Own_Bitmap on the slot first. */ /* you should call @FT_GlyphSlot_Own_Bitmap on the slot first. */
/* */ /* */
/* Bitmaps in @FT_PIXEL_MODE_GRAY2 and @FT_PIXEL_MODE_GRAY@ format */
/* are converted to @FT_PIXEL_MODE_GRAY format (i.e., 8bpp). */
/* */
FT_EXPORT( FT_Error ) FT_EXPORT( FT_Error )
FT_Bitmap_Embolden( FT_Library library, FT_Bitmap_Embolden( FT_Library library,
FT_Bitmap* bitmap, FT_Bitmap* bitmap,
@ -135,9 +148,9 @@ FT_BEGIN_HEADER
/* FT_Bitmap_Convert */ /* FT_Bitmap_Convert */
/* */ /* */
/* <Description> */ /* <Description> */
/* Convert a bitmap object with depth 1bpp, 2bpp, 4bpp, or 8bpp to a */ /* Convert a bitmap object with depth 1bpp, 2bpp, 4bpp, 8bpp or 32bpp */
/* bitmap object with depth 8bpp, making the number of used bytes per */ /* to a bitmap object with depth 8bpp, making the number of used */
/* line (a.k.a. the `pitch') a multiple of `alignment'. */ /* bytes line (a.k.a. the `pitch') a multiple of `alignment'. */
/* */ /* */
/* <Input> */ /* <Input> */
/* library :: A handle to a library object. */ /* library :: A handle to a library object. */
@ -197,7 +210,7 @@ FT_BEGIN_HEADER
/* FT_Bitmap_Done */ /* FT_Bitmap_Done */
/* */ /* */
/* <Description> */ /* <Description> */
/* Destroy a bitmap object created with @FT_Bitmap_New. */ /* Destroy a bitmap object initialized with @FT_Bitmap_Init. */
/* */ /* */
/* <Input> */ /* <Input> */
/* library :: A handle to a library object. */ /* library :: A handle to a library object. */
@ -221,7 +234,7 @@ FT_BEGIN_HEADER
FT_END_HEADER FT_END_HEADER
#endif /* __FTBITMAP_H__ */ #endif /* FTBITMAP_H_ */
/* END */ /* END */

View File

@ -4,7 +4,7 @@
/* */ /* */
/* Bzip2-compressed stream support. */ /* Bzip2-compressed stream support. */
/* */ /* */
/* Copyright 2010 by */ /* Copyright 2010-2018 by */
/* Joel Klinghed. */ /* Joel Klinghed. */
/* */ /* */
/* This file is part of the FreeType project, and may only be used, */ /* This file is part of the FreeType project, and may only be used, */
@ -16,8 +16,8 @@
/***************************************************************************/ /***************************************************************************/
#ifndef __FTBZIP2_H__ #ifndef FTBZIP2_H_
#define __FTBZIP2_H__ #define FTBZIP2_H_
#include <ft2build.h> #include <ft2build.h>
#include FT_FREETYPE_H #include FT_FREETYPE_H
@ -91,12 +91,12 @@ FT_BEGIN_HEADER
FT_Stream_OpenBzip2( FT_Stream stream, FT_Stream_OpenBzip2( FT_Stream stream,
FT_Stream source ); FT_Stream source );
/* */ /* */
FT_END_HEADER FT_END_HEADER
#endif /* __FTBZIP2_H__ */ #endif /* FTBZIP2_H_ */
/* END */ /* END */

View File

@ -4,7 +4,7 @@
/* */ /* */
/* FreeType Cache subsystem (specification). */ /* FreeType Cache subsystem (specification). */
/* */ /* */
/* Copyright 1996-2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2010 by */ /* Copyright 1996-2018 by */
/* David Turner, Robert Wilhelm, and Werner Lemberg. */ /* David Turner, Robert Wilhelm, and Werner Lemberg. */
/* */ /* */
/* This file is part of the FreeType project, and may only be used, */ /* This file is part of the FreeType project, and may only be used, */
@ -16,8 +16,8 @@
/***************************************************************************/ /***************************************************************************/
#ifndef __FTCACHE_H__ #ifndef FTCACHE_H_
#define __FTCACHE_H__ #define FTCACHE_H_
#include <ft2build.h> #include <ft2build.h>
@ -156,7 +156,7 @@ FT_BEGIN_HEADER
* @note: * @note:
* Never use NULL as a valid @FTC_FaceID. * Never use NULL as a valid @FTC_FaceID.
* *
* Face IDs are passed by the client to the cache manager, which calls, * Face IDs are passed by the client to the cache manager that calls,
* when needed, the @FTC_Face_Requester to translate them into new * when needed, the @FTC_Face_Requester to translate them into new
* @FT_Face objects. * @FT_Face objects.
* *
@ -209,22 +209,11 @@ FT_BEGIN_HEADER
typedef FT_Error typedef FT_Error
(*FTC_Face_Requester)( FTC_FaceID face_id, (*FTC_Face_Requester)( FTC_FaceID face_id,
FT_Library library, FT_Library library,
FT_Pointer request_data, FT_Pointer req_data,
FT_Face* aface ); FT_Face* aface );
/* */ /* */
#ifdef FT_CONFIG_OPTION_OLD_INTERNALS
/* these macros are incompatible with LLP64, should not be used */
#define FT_POINTER_TO_ULONG( p ) ( (FT_ULong)(FT_Pointer)(p) )
#define FTC_FACE_ID_HASH( i ) \
((FT_UInt32)(( FT_POINTER_TO_ULONG( i ) >> 3 ) ^ \
( FT_POINTER_TO_ULONG( i ) << 7 ) ) )
#endif /* FT_CONFIG_OPTION_OLD_INTERNALS */
/*************************************************************************/ /*************************************************************************/
/*************************************************************************/ /*************************************************************************/
@ -381,7 +370,7 @@ FT_BEGIN_HEADER
/* should never try to discard it yourself. */ /* should never try to discard it yourself. */
/* */ /* */
/* The @FT_Face object doesn't necessarily have a current size object */ /* The @FT_Face object doesn't necessarily have a current size object */
/* (i.e., face->size can be 0). If you need a specific `font size', */ /* (i.e., face->size can be~0). If you need a specific `font size', */
/* use @FTC_Manager_LookupSize instead. */ /* use @FTC_Manager_LookupSize instead. */
/* */ /* */
/* Never change the face's transformation matrix (i.e., never call */ /* Never change the face's transformation matrix (i.e., never call */
@ -551,13 +540,6 @@ FT_BEGIN_HEADER
FTC_FaceID face_id ); FTC_FaceID face_id );
/*************************************************************************/
/* */
/* <Section> */
/* cache_subsystem */
/* */
/*************************************************************************/
/************************************************************************* /*************************************************************************
* *
* @type: * @type:
@ -634,14 +616,6 @@ FT_BEGIN_HEADER
FT_UInt32 char_code ); FT_UInt32 char_code );
/*************************************************************************/
/* */
/* <Section> */
/* cache_subsystem */
/* */
/*************************************************************************/
/*************************************************************************/ /*************************************************************************/
/*************************************************************************/ /*************************************************************************/
/*************************************************************************/ /*************************************************************************/
@ -678,8 +652,8 @@ FT_BEGIN_HEADER
typedef struct FTC_ImageTypeRec_ typedef struct FTC_ImageTypeRec_
{ {
FTC_FaceID face_id; FTC_FaceID face_id;
FT_Int width; FT_UInt width;
FT_Int height; FT_UInt height;
FT_Int32 flags; FT_Int32 flags;
} FTC_ImageTypeRec; } FTC_ImageTypeRec;
@ -705,17 +679,6 @@ FT_BEGIN_HEADER
(d1)->width == (d2)->width && \ (d1)->width == (d2)->width && \
(d1)->flags == (d2)->flags ) (d1)->flags == (d2)->flags )
#ifdef FT_CONFIG_OPTION_OLD_INTERNALS
/* this macro is incompatible with LLP64, should not be used */
#define FTC_IMAGE_TYPE_HASH( d ) \
(FT_UFast)( FTC_FACE_ID_HASH( (d)->face_id ) ^ \
( (d)->width << 8 ) ^ (d)->height ^ \
( (d)->flags << 4 ) )
#endif /* FT_CONFIG_OPTION_OLD_INTERNALS */
/*************************************************************************/ /*************************************************************************/
/* */ /* */
@ -723,7 +686,7 @@ FT_BEGIN_HEADER
/* FTC_ImageCache */ /* FTC_ImageCache */
/* */ /* */
/* <Description> */ /* <Description> */
/* A handle to an glyph image cache object. They are designed to */ /* A handle to a glyph image cache object. They are designed to */
/* hold many distinct glyph images while not exceeding a certain */ /* hold many distinct glyph images while not exceeding a certain */
/* memory threshold. */ /* memory threshold. */
/* */ /* */
@ -771,7 +734,7 @@ FT_BEGIN_HEADER
/* aglyph :: The corresponding @FT_Glyph object. 0~in case of */ /* aglyph :: The corresponding @FT_Glyph object. 0~in case of */
/* failure. */ /* failure. */
/* */ /* */
/* anode :: Used to return the address of of the corresponding cache */ /* anode :: Used to return the address of the corresponding cache */
/* node after incrementing its reference count (see note */ /* node after incrementing its reference count (see note */
/* below). */ /* below). */
/* */ /* */
@ -824,7 +787,7 @@ FT_BEGIN_HEADER
/* aglyph :: The corresponding @FT_Glyph object. 0~in case of */ /* aglyph :: The corresponding @FT_Glyph object. 0~in case of */
/* failure. */ /* failure. */
/* */ /* */
/* anode :: Used to return the address of of the corresponding */ /* anode :: Used to return the address of the corresponding */
/* cache node after incrementing its reference count */ /* cache node after incrementing its reference count */
/* (see note below). */ /* (see note below). */
/* */ /* */
@ -979,7 +942,7 @@ FT_BEGIN_HEADER
/* <Output> */ /* <Output> */
/* sbit :: A handle to a small bitmap descriptor. */ /* sbit :: A handle to a small bitmap descriptor. */
/* */ /* */
/* anode :: Used to return the address of of the corresponding cache */ /* anode :: Used to return the address of the corresponding cache */
/* node after incrementing its reference count (see note */ /* node after incrementing its reference count (see note */
/* below). */ /* below). */
/* */ /* */
@ -1034,7 +997,7 @@ FT_BEGIN_HEADER
/* <Output> */ /* <Output> */
/* sbit :: A handle to a small bitmap descriptor. */ /* sbit :: A handle to a small bitmap descriptor. */
/* */ /* */
/* anode :: Used to return the address of of the corresponding */ /* anode :: Used to return the address of the corresponding */
/* cache node after incrementing its reference count */ /* cache node after incrementing its reference count */
/* (see note below). */ /* (see note below). */
/* */ /* */
@ -1068,73 +1031,12 @@ FT_BEGIN_HEADER
FTC_SBit *sbit, FTC_SBit *sbit,
FTC_Node *anode ); FTC_Node *anode );
/* */
#ifdef FT_CONFIG_OPTION_OLD_INTERNALS
/*@***********************************************************************/
/* */
/* <Struct> */
/* FTC_FontRec */
/* */
/* <Description> */
/* A simple structure used to describe a given `font' to the cache */
/* manager. Note that a `font' is the combination of a given face */
/* with a given character size. */
/* */
/* <Fields> */
/* face_id :: The ID of the face to use. */
/* */
/* pix_width :: The character width in integer pixels. */
/* */
/* pix_height :: The character height in integer pixels. */
/* */
typedef struct FTC_FontRec_
{
FTC_FaceID face_id;
FT_UShort pix_width;
FT_UShort pix_height;
} FTC_FontRec;
/* */ /* */
#define FTC_FONT_COMPARE( f1, f2 ) \
( (f1)->face_id == (f2)->face_id && \
(f1)->pix_width == (f2)->pix_width && \
(f1)->pix_height == (f2)->pix_height )
/* this macro is incompatible with LLP64, should not be used */
#define FTC_FONT_HASH( f ) \
(FT_UInt32)( FTC_FACE_ID_HASH((f)->face_id) ^ \
((f)->pix_width << 8) ^ \
((f)->pix_height) )
typedef FTC_FontRec* FTC_Font;
FT_EXPORT( FT_Error )
FTC_Manager_Lookup_Face( FTC_Manager manager,
FTC_FaceID face_id,
FT_Face *aface );
FT_EXPORT( FT_Error )
FTC_Manager_Lookup_Size( FTC_Manager manager,
FTC_Font font,
FT_Face *aface,
FT_Size *asize );
#endif /* FT_CONFIG_OPTION_OLD_INTERNALS */
/* */
FT_END_HEADER FT_END_HEADER
#endif /* __FTCACHE_H__ */ #endif /* FTCACHE_H_ */
/* END */ /* END */

View File

@ -1,150 +0,0 @@
/***************************************************************************/
/* */
/* ftcffdrv.h */
/* */
/* FreeType API for controlling the CFF driver (specification only). */
/* */
/* Copyright 2013 by */
/* David Turner, Robert Wilhelm, and Werner Lemberg. */
/* */
/* This file is part of the FreeType project, and may only be used, */
/* modified, and distributed under the terms of the FreeType project */
/* license, LICENSE.TXT. By continuing to use, modify, or distribute */
/* this file you indicate that you have read the license and */
/* understand and accept it fully. */
/* */
/***************************************************************************/
#ifndef __FTCFFDRV_H__
#define __FTCFFDRV_H__
#include <ft2build.h>
#include FT_FREETYPE_H
#ifdef FREETYPE_H
#error "freetype.h of FreeType 1 has been loaded!"
#error "Please fix the directory search order for header files"
#error "so that freetype.h of FreeType 2 is found first."
#endif
FT_BEGIN_HEADER
/**************************************************************************
*
* @section:
* cff_driver
*
* @title:
* The CFF driver
*
* @abstract:
* Controlling the CFF driver module.
*
* @description:
* While FreeType's CFF driver doesn't expose API functions by itself,
* it is possible to control its behaviour with @FT_Property_Set and
* @FT_Property_Get. The following lists the available properties
* together with the necessary macros and structures.
*
* The CFF driver's module name is `cff'.
*
*/
/**************************************************************************
*
* @property:
* hinting-engine
*
* @description:
* Thanks to Adobe, which contributed a new hinting (and parsing)
* engine, an application can select between `freetype' and `adobe'.
*
* Right now, the default engine is `freetype'. However, this will
* change: After a certain time of intensive testing it is planned to
* make `adobe' the default due to its superior rendering results.
*
* The following example code demonstrates how to select Adobe's hinting
* engine (omitting the error handling).
*
* {
* FT_Library library;
* FT_Face face;
* FT_UInt hinting_engine = FT_CFF_HINTING_ADOBE;
*
*
* FT_Init_FreeType( &library );
*
* FT_Property_Set( library, "cff",
* "hinting-engine", &hinting_engine );
* }
*
* @note:
* This property can be used with @FT_Property_Get also.
*
*/
/**************************************************************************
*
* @enum:
* FT_CFF_HINTING_XXX
*
* @description:
* A list of constants used for the @hinting-engine property to select
* the hinting engine for CFF fonts.
*
* @values:
* FT_CFF_HINTING_FREETYPE ::
* Use the old FreeType hinting engine.
*
* FT_CFF_HINTING_ADOBE ::
* Use the hinting engine contributed by Adobe.
*
*/
#define FT_CFF_HINTING_FREETYPE 0
#define FT_CFF_HINTING_ADOBE 1
/**************************************************************************
*
* @property:
* no-stem-darkening
*
* @description:
* By default, the Adobe CFF engine darkens stems at smaller sizes,
* regardless of hinting, to enhance contrast. Setting this property,
* stem darkening gets switched off.
*
* Note that stem darkening is never applied if @FT_LOAD_NO_SCALE is set.
*
* {
* FT_Library library;
* FT_Face face;
* FT_Bool no_stem_darkening = TRUE;
*
*
* FT_Init_FreeType( &library );
*
* FT_Property_Set( library, "cff",
* "no-stem-darkening", &no_stem_darkening );
* }
*
* @note:
* This property can be used with @FT_Property_Get also.
*
*/
/* */
FT_END_HEADER
#endif /* __FTCFFDRV_H__ */
/* END */

Some files were not shown because too many files have changed in this diff Show More