/* ********************************************************************************************************* * uC/GUI * Universal graphic software for embedded applications * * (c) Copyright 2002, Micrium Inc., Weston, FL * (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH * * µC/GUI is protected by international copyright laws. Knowledge of the * source code may not be used to write a similar product. This file may * only be used in accordance with a license and should not be redistributed * in any way. We appreciate your understanding and fairness. * ---------------------------------------------------------------------- File : GUI__DivideRound32.C Purpose : Implementation of GUI__DivideRound32 ---------------------------END-OF-HEADER------------------------------ */ #include "GUI_Protected.h" /********************************************************************* * * Public code * ********************************************************************** */ /********************************************************************* * * GUI__DivideRound32 * * This routine is used internally for computations. Primary goal is * to minimize the effects of rounding which occur if we simply * divide. */ I32 GUI__DivideRound32(I32 a, I32 b) { if (b) { if (a < 0) { return (a - (b >> 1)) / b; } else { return (a + (b >> 1)) / b; } } return 0; } /*************************** End of file ****************************/