<div dir="ltr"><div dir="ltr">example<br><br><a href="https://mermaid.live/edit#pako:eNqFVG1vmzAQ_iuWP6UVaZM0DQGlkSYlnSJ1bUUyddmYkAlmYQEbGVP6sv732cdrtSrj0z0v9p19h1_xjgcU2ziTRNJFRH4JkvQfRy5zWcQi6WeBjVYqiEgcvVAUR76iSu2WyoKLwzu94lyWHBaRsNGOs0yi3Z4IdJrwnEkv5RGT6Aq5-FyGMnXxzBfnc0GzPNZ0cggi0UMdr4HW3sp5-PYV_amiz010dwKrdbWwAnK2e2mqh8CC9OdiFxsN7OZoSGez_LL2rlc3y_V2rWJvs71fepvrzf36iMlZflp4D85qs2xNLvZjvjtk6lquhoPR2CgiFvAC8Nh4pMLnGXVxWd6JPgJPKRPcRmGgitegh1Ii9wa685zF3e3NFimboES1xH-WNFMujXpqgYECIonn52FIhaHT6zw87HV5dFJvsItV7s5NAdb7aIPOXHxYxYNTV1GISNK2DIBtHQZkb3xHs-XQho6as6pv3XnRdSfBu-4C_sflMji8nmYUqkn0ynA202A-L2WEfpz-RP3-HFUzXtMVbKRmnFu5osACQ16LAEq6GsVGqTCIbVG1fIyBJeVc1GKJQNCtrGkdHyfh2rsKECCXTTiSvuhmL4CG1tY0gP_S7ypomQ9KKLOXnGreb9XetnkVDefSQ4ANnFCRkChQD9mrdrlY7mmi_i5bhQENiRoZ9fOzN2UlueTrZ7bDthQ5NXCeBu3Th-2QxJliU8K-c57UJgWx_YqfsD0cDs6soXk5mlyMR2PTmkwN_Kzo0dn4cmxZg4FlTqeTifVm4BfYQNkvLNMyzUvLvJhMp6b59hcqM78E">https://mermaid.live/edit#pako:eNqFVG1vmzAQ_iuWP6UVaZM0DQGlkSYlnSJ1bUUyddmYkAlmYQEbGVP6sv732cdrtSrj0z0v9p19h1_xjgcU2ziTRNJFRH4JkvQfRy5zWcQi6WeBjVYqiEgcvVAUR76iSu2WyoKLwzu94lyWHBaRsNGOs0yi3Z4IdJrwnEkv5RGT6Aq5-FyGMnXxzBfnc0GzPNZ0cggi0UMdr4HW3sp5-PYV_amiz010dwKrdbWwAnK2e2mqh8CC9OdiFxsN7OZoSGez_LL2rlc3y_V2rWJvs71fepvrzf36iMlZflp4D85qs2xNLvZjvjtk6lquhoPR2CgiFvAC8Nh4pMLnGXVxWd6JPgJPKRPcRmGgitegh1Ii9wa685zF3e3NFimboES1xH-WNFMujXpqgYECIonn52FIhaHT6zw87HV5dFJvsItV7s5NAdb7aIPOXHxYxYNTV1GISNK2DIBtHQZkb3xHs-XQho6as6pv3XnRdSfBu-4C_sflMji8nmYUqkn0ynA202A-L2WEfpz-RP3-HFUzXtMVbKRmnFu5osACQ16LAEq6GsVGqTCIbVG1fIyBJeVc1GKJQNCtrGkdHyfh2rsKECCXTTiSvuhmL4CG1tY0gP_S7ypomQ9KKLOXnGreb9XetnkVDefSQ4ANnFCRkChQD9mrdrlY7mmi_i5bhQENiRoZ9fOzN2UlueTrZ7bDthQ5NXCeBu3Th-2QxJliU8K-c57UJgWx_YqfsD0cDs6soXk5mlyMR2PTmkwN_Kzo0dn4cmxZg4FlTqeTifVm4BfYQNkvLNMyzUvLvJhMp6b59hcqM78E</a><br><div><br></div><div>SVG link<br><a href="https://mermaid.ink/svg/pako:eNqFVG1v2jAQ_iuWP0GVtrxDIoo0CTohdaUCJsaWKXKIMzKIjRynKWX899mXV7SK5dM9L_adfRef8IZ7FFs4kkTScUB-CRLevrZsZrOABdKNPAtNVRCQffBO0T5wFZVqz1QmXOwu9IyzWbgbB8JCG84iiTZbItBNyGMmnQMPmEQPyMb30pcHGw9dcT8SNIr3mg53XiBqqOI10MKZzlffvqI_WfS5iGZ1WK2rhRWQs9xLUzUEFqQ_G9vYKGA1R0HOl5MvC-dx-jRZrBcqdpbrl4mzfFy-LK6Y5pNPY2c1ny4npcnG7p5vdpG6lodmo9UxkoB5PAHcMV6pcHlEbZyWV9dH4AfKBLeQ76niNaihA5FbA82c-Xj2_LRGyiYoUS1xj5JGyqVRTS0wkEckcdzY96kwdHqdh_u1Ko_q-QabvcpduSnAeh9t0JmTD6tYzfMqEhFIWpYBsKzDgOyF72q2GNpQUWOW9a06L7ru0LvoLuB_XDaDw-tpRr6aRCcNh0MNRqNURujHzU90eztC2YzndAYLqRjnUs4osMCQ5yKAlM5GsVAyDGJZVC5fY2BJOhe5mCIQdCtzWsfXSbj2qgIEyGkTrqRPqtkToKG1OQ3gv_RFBSXzQQlp9pRTzfut2ls2L6PhXHoIsIFDKkISeOohO2mXjeWWhurvslToUZ-okVE_PzsrK4klXxzZBltSxNTA8cErn76cPBD2nfMqxNYJv2Gr2Wzcmc1-t9Vrd1qdvtkbGPio6NZdp9sxzUbD7A8GvZ55NvA7bKDsbbNv9vtds9HtNcxm-_wXZ4G-ow">https://mermaid.ink/svg/pako:eNqFVG1v2jAQ_iuWP0GVtrxDIoo0CTohdaUCJsaWKXKIMzKIjRynKWX899mXV7SK5dM9L_adfRef8IZ7FFs4kkTScUB-CRLevrZsZrOABdKNPAtNVRCQffBO0T5wFZVqz1QmXOwu9IyzWbgbB8JCG84iiTZbItBNyGMmnQMPmEQPyMb30pcHGw9dcT8SNIr3mg53XiBqqOI10MKZzlffvqI_WfS5iGZ1WK2rhRWQs9xLUzUEFqQ_G9vYKGA1R0HOl5MvC-dx-jRZrBcqdpbrl4mzfFy-LK6Y5pNPY2c1ny4npcnG7p5vdpG6lodmo9UxkoB5PAHcMV6pcHlEbZyWV9dH4AfKBLeQ76niNaihA5FbA82c-Xj2_LRGyiYoUS1xj5JGyqVRTS0wkEckcdzY96kwdHqdh_u1Ko_q-QabvcpduSnAeh9t0JmTD6tYzfMqEhFIWpYBsKzDgOyF72q2GNpQUWOW9a06L7ru0LvoLuB_XDaDw-tpRr6aRCcNh0MNRqNURujHzU90eztC2YzndAYLqRjnUs4osMCQ5yKAlM5GsVAyDGJZVC5fY2BJOhe5mCIQdCtzWsfXSbj2qgIEyGkTrqRPqtkToKG1OQ3gv_RFBSXzQQlp9pRTzfut2ls2L6PhXHoIsIFDKkISeOohO2mXjeWWhurvslToUZ-okVE_PzsrK4klXxzZBltSxNTA8cErn76cPBD2nfMqxNYJv2Gr2Wzcmc1-t9Vrd1qdvtkbGPio6NZdp9sxzUbD7A8GvZ55NvA7bKDsbbNv9vtds9HtNcxm-_wXZ4G-ow</a><br><br><br></div><div>I couldn't figure out how to get semi colons to work</div><div>new lines are kind  of a pain also.</div><div><br></div><div><div style="color:rgb(0,0,0);background-color:rgb(255,255,254);font-family:Menlo,Monaco,"Courier New",monospace;font-size:12px;line-height:18px;white-space:pre"><div><span style="color:rgb(150,80,200);font-weight:bold">stateDiagram-v2</span></div><br><div><span style="color:rgb(162,40,137)">initbsd</span><span style="font-weight:bold">:</span><span style="color:rgb(170,133,0)"> Initialize libbsd</span></div><div><span style="color:rgb(162,40,137)">initNetwork</span><span style="font-weight:bold">:</span><span style="color:rgb(170,133,0)"> Initialize Network</span></div><div><span style="color:rgb(162,40,137)">mkDir</span><span style="font-weight:bold">:</span><span style="color:rgb(170,133,0)"> const char *mount_point = "/tftp"<br/>result = mkdir( mount_point, S_IRWXU | S_IRWXG | S_IRWXO)<br/></span></div><br><div><span style="color:rgb(162,40,137)">mountDir</span><span style="font-weight:bold">:</span><span style="color:rgb(170,133,0)"> result = mount( <br/>     "",<br/>    mount_point,<br/>    RTEMS_FILESYSTEM_TYPE_TFTPS,<br/>    RTEMS_FILESYSTEM_READ_WRITE,<br/>    "blocksize=1024,windowsize=4,verbose" <br/>)</span></div><br><div><span style="color:rgb(162,40,137)">openro</span><span style="font-weight:bold">:</span><span style="color:rgb(170,133,0)"> fd = open( path, O_RDONLY )</span></div><div><span style="color:rgb(162,40,137)">read</span><span style="font-weight:bold">:</span><span style="color:rgb(170,133,0)"> bytes = read( fd, data_buffer,    sizeof( data_buffer ) )</span></div><div><span style="color:rgb(162,40,137)">readclose</span><span style="font-weight:bold">:</span><span style="color:rgb(170,133,0)"> result = close( fd )</span></div><div><span style="color:rgb(162,40,137)">openw</span><span style="font-weight:bold">:</span><span style="color:rgb(170,133,0)"> fd = open( path, O_WRONLY )</span></div><div><span style="color:rgb(162,40,137)">write</span><span style="font-weight:bold">:</span><span style="color:rgb(170,133,0)"> bytes = write( fd, data, size )</span></div><div><span style="color:rgb(162,40,137)">writeclose</span><span style="font-weight:bold">:</span><span style="color:rgb(170,133,0)"> result = close( fd )</span></div><div><span style="color:rgb(162,40,137)">umount</span><span style="font-weight:bold">:</span><span style="color:rgb(170,133,0)"> result = unmount( mount_point )</span></div><div><span style="color:rgb(162,40,137)">rmdir</span><span style="font-weight:bold">:</span><span style="color:rgb(170,133,0)"> result = rmdir( mount_point )</span></div><br><div><span style="color:rgb(100,150,150)">    state </span><span style="color:rgb(162,40,137)">fork_state</span> <span style="color:rgb(75,75,150)"><<fork>></span></div><div>      <span style="color:rgb(170,133,0)">[*]</span> <span style="color:rgb(0,136,0);font-weight:bold">--></span> <span style="color:rgb(162,40,137)">initbsd</span></div><div>      <span style="color:rgb(162,40,137)">initbsd</span> <span style="color:rgb(0,136,0);font-weight:bold">--></span> <span style="color:rgb(162,40,137)">initNetwork</span></div><div>      <span style="color:rgb(162,40,137)">initNetwork</span> <span style="color:rgb(0,136,0);font-weight:bold">--></span> <span style="color:rgb(162,40,137)">mkDir</span></div><div>      <span style="color:rgb(162,40,137)">mkDir</span> <span style="color:rgb(0,136,0);font-weight:bold">--></span> <span style="color:rgb(162,40,137)">mountDir</span></div><div>      <span style="color:rgb(162,40,137)">mountDir</span> <span style="color:rgb(0,136,0);font-weight:bold">--></span> <span style="color:rgb(162,40,137)">fork_state</span></div><div>      <span style="color:rgb(162,40,137)">fork_state</span></div><div>      <span style="color:rgb(162,40,137)">fork_state</span> <span style="color:rgb(0,136,0);font-weight:bold">--></span> <span style="color:rgb(162,40,137)">openro</span></div><div>      <span style="color:rgb(162,40,137)">openro</span> <span style="color:rgb(0,136,0);font-weight:bold">--></span> <span style="color:rgb(162,40,137)">read</span></div><div>      <span style="color:rgb(162,40,137)">read</span> <span style="color:rgb(0,136,0);font-weight:bold">--></span> <span style="color:rgb(162,40,137)">read</span></div><div>      <span style="color:rgb(162,40,137)">read</span> <span style="color:rgb(0,136,0);font-weight:bold">--></span> <span style="color:rgb(162,40,137)">readclose</span></div><div>      <span style="color:rgb(162,40,137)">readclose</span> <span style="color:rgb(0,136,0);font-weight:bold">--></span> <span style="color:rgb(162,40,137)">umount</span></div><div>      <span style="color:rgb(162,40,137)">fork_state</span> <span style="color:rgb(0,136,0);font-weight:bold">--></span> <span style="color:rgb(162,40,137)">openw</span></div><div>      <span style="color:rgb(162,40,137)">openw</span> <span style="color:rgb(0,136,0);font-weight:bold">--></span> <span style="color:rgb(162,40,137)">write</span></div><div>      <span style="color:rgb(162,40,137)">write</span> <span style="color:rgb(0,136,0);font-weight:bold">--></span> <span style="color:rgb(162,40,137)">write</span></div><div>      <span style="color:rgb(162,40,137)">write</span> <span style="color:rgb(0,136,0);font-weight:bold">--></span> <span style="color:rgb(162,40,137)">writeclose</span></div><div>      <span style="color:rgb(162,40,137)">writeclose</span> <span style="color:rgb(0,136,0);font-weight:bold">--></span> <span style="color:rgb(162,40,137)">umount</span></div><div><span style="color:rgb(100,150,150)">      state </span><span style="color:rgb(162,40,137)">umount</span> <span style="color:rgb(75,75,150)"><<join>></span></div><div>      <span style="color:rgb(162,40,137)">umount</span> <span style="color:rgb(0,136,0);font-weight:bold">--></span> <span style="color:rgb(162,40,137)">rmdir</span></div></div></div></div><div dir="ltr" class="gmail_signature"><div dir="ltr"><br></div></div></div>