Routines |
Prev: 37742 | Up: Map | Next: 37808 |
Used by the routine at CheckFullHouse.
|
||||
Check if there is a flush.
|
||||
CheckFlush | 37766 | CALL Handler_Flush | Call Handler_Flush. | |
37769 | JR NZ,CheckStraight | Jump to CheckStraight if there are no flush matches. | ||
There is a flush! Process it.
|
||||
37771 | LD A,(IX+0) | A=*IX+0. | ||
37774 | LD B,4 | B=4. | ||
CheckFlush_0 | 37776 | SRA A | Shift A right (with carry). | |
37778 | DJNZ CheckFlush_0 | Decrease counter by one and loop back to CheckFlush_0 until counter is zero. | ||
37780 | LD (38045),A | Write A to *TableHandEvaluation_BaseCardSuit. | ||
Record this hand "type".
|
||||
37783 | LD A,6 | Write "Flush" to *TableHandEvaluation_Type. | ||
37785 | LD (38043),A | |||
37788 | LD D,0 | D=0. | ||
37790 | PUSH IX | HL=IX (using the stack). | ||
37792 | POP HL | |||
37793 | LD B,5 | B=5. | ||
CheckFlush_1 | 37795 | LD A,(HL) | A=*HL. | |
37796 | AND %00001111 | Keep only bits 0-3. | ||
37798 | CP D | Jump to CheckFlush_2 if A is higher than D. | ||
37799 | JR NC,CheckFlush_2 | |||
37801 | LD D,A | D=A. | ||
CheckFlush_2 | 37802 | DJNZ CheckFlush_1 | Decrease counter by one and loop back to CheckFlush_1 until counter is zero. | |
37804 | LD (38044),A | Write A to *TableHandEvaluation_BaseCard. | ||
37807 | RET | Return. |
Prev: 37742 | Up: Map | Next: 37808 |