aboutsummaryrefslogtreecommitdiff
path: root/Source/System.c
Commit message (Collapse)AuthorAgeFilesLines
* Always call PSX_InitEx(0)Xavier Del Campo Romero2021-01-011-6/+0
|
* Removed SIO interrupt (it caused VBlank ISR not to be triggered).Xavier ASUS2018-11-301-3/+4
| | | | | | | Added Gfx wait on LoadMenuEnd(). Otherwise, some levels would not start after loading all required files. Also, added GPU wait on Menu.c before entering the main loop. An invalid index inside sound table was being accessed when creating an arrival flight. This made the game crash only under real hardware. Other minor changes and fixes.
* Bugfix: minutes were not being retrieved from PLT files.Xavier ASUS2018-11-251-0/+3
| | | | | | Game.c: parking slots cannot be selected if an aircraft in STATE_PARKED state is on it. Other fixes and improvements. Added some tiles from TILESET2.TIM
* * LEVEL3.PLT was incorrectly using Windows CRLF end of line.XaviDCR922018-11-251-304/+302
| | | | * When assigning a parking slot, busy parking slots cannot be selected. Some work TODO yet, though.
* Aircraft are now auto-locked when entering "ShowAircraftData" menu.Xavier ASUS2018-11-241-4/+4
| | | | | Minor fixes and improvements. Path is shown when selecting a moving aircraft.
* Optimization flag changed from -Os to -O3 (seems to perform better FPS-wise).Xavier ASUS2018-11-231-4/+4
| | | | Improved const-correctness and scope for some variables.
* Added "const" qualifier to some functions.Xavier ASUS2018-11-181-6/+12
| | | | | "cdrom:\ and ;1" are automatically inserted into file name, in order to save memory space. Some minor optimizations.
* * Game can now compile without PSXSDK_DEBUG flag.XaviDCR922018-03-261-4/+5
| | | | * RCNT2 ISR is now disabled as soon as SystemLoadFileIntoBuffer() is called. Hopefully that will avoid problems with real HW.
* * Increased number of events on SYSTEM.CNF.XaviDCR922018-03-221-1/+8
| | | | Minor changes?
* - .iso files are now ignored.XaviDCR922018-03-201-18/+2
| | | | | - Removed deprecated functions from System.c. * Minor changes.
* * System.c: Root counters are finally working, YAY!XaviDCR922018-03-171-10/+14
| | | | | * Sfx.c: SfxStopMusic() was relying on global timer to be increased under ISR, but this is not true anymore! * Other minor changes on EndAnimation.c.
* * Menu.c: bugfix for PLT level list.XaviDCR922018-03-101-9/+9
| | | | * Minor: added whitespace to "sizeof" operand.
* + Added Message module, used for tutorials.XaviDCR922018-02-251-1/+1
| | | | | | | + Added first tutorial level. * Font now inserts line feed automatically if the next word is too long to fit. * Gfx.c: added primitive list double buffering in order to gain some performance. * MapEditor: now airport can be defined inside the tool.
* * Menu.c: when 1Player/2Player buttons are pressed, level list is now shown.XaviDCR922017-12-301-0/+18
| | | | * System.c/System.h: new prototype SystemGetFileBasename().
* * RWY_DIR and AIRCRAFT_DIRECTION have been joint into a single enum.XaviDCR922017-12-291-48/+10
| | | | | | * Game.c: new prototypes GameGetParkingDirection() and GameGetRunwayDirection(). * Slight optimizations into GameRenderLevel(). * Added some comment headers into Gfx.c.
* * Slight optimization: all comparations against true are now compared ↵XaviDCR922017-12-261-4/+4
| | | | | | | against != false. + Added a provisional background during gameplay (still WIP). * Map editor now allows creating a map.
* * Removed unneeded -g flag from Makefile.XaviDCR922017-09-161-1/+1
| | | | | | | * Aircraft now prevents collision against other aircraft if state == STATE_TAXIING. * Game: new event handlers for new Aircraft collision prevention algorithm. * Font: although not compulsory, _blend_effect_lum should be volatile. * Other minor changes.
* * Trimmed ending whitespaces.XaviDCR922017-09-161-229/+229
| | | | * Makefile now generates output TIM files automatically, using 'cat whatever.flags' files as flags for bmp2tim.
* * Minor changes (spaces between "if"/"for"... instructions).XaviDCR922017-08-301-31/+31
| | | | + Added output ELF file with debugging symbols for nocash.
* * (Bugfix): ptrPlayer->SelectedAircraft was not being updated correctly when ↵XaviDCR922017-08-191-1/+1
| | | | | | | | | new aircraft appeared. * (Bugfix): PltParser was casting remaining time to uint8_t instead of uint16_t. * Reduced file buffer size to original value. * GfxDrawButton(): L1/R1/L2/R2 text is now printed on top of Lx/Rx button. * Other minor changes.
* * Added more comments.XaviDCR922017-08-181-1/+1
| | | | | * Radio chatter sounds. * Created aircraft state STATE_STOPPED, to be used when L1 is pressed on aircraft selection mode.
* + Documentation about sound sources.XaviDCR922017-08-141-0/+114
| | | | | | | | * Sine-like effect used for runways now moved to SystemCalculateSine(). * Bugfix: ptrPlayer->FlightDataPage is now decreased if there aren't enough active aircraft. * On main menu, 2 players option is now disabled if pad 2 is disconnected. * More work on FPS measurement (not working yet). * Number of used SPU voices is now returned on SfxUploadSound().
* * IMASK is now accessed as volatile variable.XaviDCR922017-08-111-1/+6
| | | | * Other minor changes.
* + System timer functions now moved to a separate source file, Timer.c/Timer.h.XaviDCR922017-08-101-155/+3
| | | | | * Added some more comments on Game.c. * On GamePathToTile(), duplicate checks for existing tile have been replaced by calls to GameWaypointCheckExisting().
* * Added some comments on Game.c.XaviDCR922017-08-091-9/+29
| | | | | | * Some performance optimizations on Game.c (removed unneeded "for" loops). * Timer 2 is now handler (ISR still not working). * SYSTEM.CNF: EVENT parameter increased to 7.
* * Include directives are now moved to .c instead of .h, as it should really ↵XaviDCR922017-08-061-15/+67
| | | | | | | | | be... * Makefile now rebuilds needed targets on modified header files. * Some more work on GameEmergencyMode(). * Initial work on PSX mouse auto detection. * Prototypes for RCNT2 I_MASK bit handling.
* * Added comments on System.XaviDCR922017-07-271-10/+282
| | | | | | | * Files needed for Game are now only loaded once, except from LEVEL1.PLT. * Added DevMenu to get debug info. * ISR_LoadMenuVBlank() does not stop when accessing SIO. * On fopen() and SERIAL_INTERFACE defined, "#" is prepended and "@" is appended to filename string.
* + Added support for SIO (Serial Input Output).XaviDCR922017-07-201-22/+60
| | | | * On SystemLoadFileToBuffer(), files can be now uploaded to PSX using QPSXSerial.
* * Reduced tileset sprite size from 64x64 to 64x48.XaviDCR922017-06-271-1/+13
| | | | | | * Modified rendering functions to keep up with this size reduction. * Sprites in TIM have been reordered inside VRAM. * Other minor changes.
* * Tried to get some work done in MapEditor with no success so far.XaviDCR922017-06-111-7/+1
| | | | | | * Timers with no repeat flag were being set to NULL, but this is not actually desired! * Reenabled transparency for aircraft shadow. * Deprecated NotificationRequest flags, and replaced by system timer handling.
* * Implemented aircraft collision. But it would not detect collision in some ↵XaviDCR922017-06-061-5/+20
| | | | | | | | cases. * Remove unneeded whitespace character on pointer variables (unary operators should not have any whitespaces). * SelectedAircraft index now increases or decreases automatically on aircraft added/removed. * Started writing Plt generation routines. Still a lot of work TODO.
* * More passengers by correct sequence are unboarded.XaviDCR922017-06-031-9/+247
| | | | | | | * Aircraft should not be removed on State == STATE_APPROACH. * Initial implementation for finished game. * Added some comments on System.c. * GameGuiPrepareNotificationString() deprecated.
* * Added more aircraft on LEVEL1.PLT.XaviDCR922017-05-271-7/+8
| | | | | | * Unboarding state now totally implemented. * (Bugfix): Incorrect aircraft was selected on ShowAircraftData. * Gfx1HzFlash() and Gfx2HzFlash() were incorrectly implemented, causing multiple ticks on a single cycle.
* * Implemented remaining time for flights.XaviDCR922017-05-251-2/+2
| | | | | * Initial STATE_UNBOARDING implementation. Still some work to do. * Added score logic.
* * Aircraft state was not being transferred ciclically from Game to Aircraft ↵XaviDCR922017-05-241-6/+6
| | | | | | | | | | module. * Improved detection of target reaching for Aircraft.c. * Cursor is now displayed correctly on both 1-player and 2-player mode. * Fixed behaviour for locking/unlocking aircraft. * Fixed menus for 2-player mode. * Minor fixes and improvements.
* * Split screen from now on is only calling GsDrawList() once. The reason for ↵XaviDCR922017-05-221-8/+8
| | | | | | | | | this is that now DMA is used instead of GPIO for drawenv/dispenv management. * (PSXSDK internals): incorrect bit shifting was being made on 0xE3 and 0xE4 GPU instructions (drawenv management). * (Bugfix): Timers were not being reset properly because pad1_cheat_timer and pad2_cheat_timer were being accidentally reset to NULL on calling memset() for cheatsArray. * Timers are now updated every 100 ms instead of every second. * Mouse sprite should be now drawn on X_SCREEN_RESOLUTION >> 2 in 2-player mode. TODO: check why this isn't working!
* * Added some comments on System.XaviDCR922017-05-011-16/+129
| | | | | | | * New routine PadOneKeySinglePress() and PadTwoKeySinglePress(). * Temp waypoints now turn red when colliding with an aircraft or with a previously existing waypoint. * When loading files, GPU operation is finishedbefore calling fopen. Also, I_MASK is disabled just in case. * For PLT files, actual tile needs to be set instead of parking number.
* * Updated.XaviDCR922017-02-041-0/+0
|
* Initial commitXavier Del Campo2017-02-041-0/+517