# Renesas/Hitachi M16C

Assembler code

```
program:000E023C
program:000E023C ; =============== S U B R O U T I N E =======================================
program:000E023C
program:000E023C ; Attributes: bp-based frame
program:000E023C
program:000E023C                 ; public $_pput
program:000E023C $_pput:
program:000E023C
program:000E023C var_2           = -2
program:000E023C
program:000E023C                 ENTER   #2
program:000E023F                 MOV.W   R1, var_2[FB]
program:000E0242                 MOV.B   p4, R0L         ; Port P4 register
program:000E0245                 MOV.B   #0, R0H
program:000E0246                 BTST    #4, R0
program:000E0249                 JEQ/Z   loc_E024F
program:000E024B                 MOV.W   #-1, R0
program:000E024D                 EXITD
program:000E024F ; ---------------------------------------------------------------------------
program:000E024F
program:000E024F loc_E024F:                              ; CODE XREF: $_pput+D↑j
program:000E024F                                         ; $_pput+1A↓j
program:000E024F                 MOV.B   p4, R0L         ; Port P4 register
program:000E0252                 MOV.B   #0, R0H
program:000E0253                 BTST    #5, R0
program:000E0256                 JEQ/Z   loc_E024F
program:000E0258                 MOV.B   var_2[FB], p5   ; Port P5 register
program:000E025D                 MOV.W   #0, var_2[FB]
program:000E0260
program:000E0260 loc_E0260:                              ; CODE XREF: $_pput+2F↓j
program:000E0260                 CMP.W   #0Ah, var_2[FB]
program:000E0265                 JGE     loc_E026D
program:000E0268                 ADD.W   #1, var_2[FB]
program:000E026B                 JMP.B   loc_E0260
program:000E026D ; ---------------------------------------------------------------------------
program:000E026D
program:000E026D loc_E026D:                              ; CODE XREF: $_pput+29↑j
program:000E026D                 MOV.B   #8, p4          ; Port P4 register

```


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.hex-rays.com/8.4/user-guide/disassembler/disassembly-gallery/renesas-hitachi-m16c.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
