Skip to content

Commit

Permalink
Add console.log
Browse files Browse the repository at this point in the history
  • Loading branch information
pawurb committed Dec 9, 2023
1 parent 73a4ed6 commit 5a620da
Show file tree
Hide file tree
Showing 3 changed files with 26 additions and 1 deletion.
2 changes: 1 addition & 1 deletion bytecode/Huff721.hex
Original file line number Diff line number Diff line change
@@ -1 +1 @@
61080e80600a3d393df35f3560e01c80631249c58b146100b357806306fdde031461017a57806395d89b41146101ac57806301ffc9a7146101de57806370a082311461020a5780636352211e1461025357806361b8ce8c1461026957806318160ddd1461027257806323b872dd1461027b57806342842e0e14610385578063b88d4fde1461053b578063095ea7b3146106f3578063081812fc14610746578063a22cb4651461079f578063e985e9c5146107ec576101945f5260205ff35b5f54806104001461012a573360015f5260205260405f20805480600214610152576001019055806002905f5260205260405f20339055806003335f5260205260405f20805460010190556001015f55335f7fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef5f5fa4005b7f96c2a076000000000000000000000000000000000000000000000000000000005f5260045ffd5b7f3ca66168000000000000000000000000000000000000000000000000000000005f5260045ffd5b60205f5260086020527f487566662037323100000000000000000000000000000000000000000000000060405260605ff35b60205f5260046020527f485546460000000000000000000000000000000000000000000000000000000060405260605ff35b60043560e01c806380ac58cd14610201576301ffc9a714610201575f5f5260205ff35b60015f5260205ff35b6003600435805f14610227575f5260205260405f20545f5260205ff35b7f46cce841000000000000000000000000000000000000000000000000000000005f525f60045260245ffd5b60026004355f5260205260405f20545f5260205ff35b5f545f5260205ff35b5f545f5260205ff35b600435602435805f14610359576044356002905f5260205260405f20805433146102d95760046044355f5260205260405f205433146102d95780546005905f5260205260405f20335f5260205260405f20546001146102d957610331565b819055806003905f5260205260405f208054600101905590806003905f5260205260405f20805460019003905590604435917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef5f5fa4005b7f43df7c02000000000000000000000000000000000000000000000000000000005f5260045ffd5b7f46cce841000000000000000000000000000000000000000000000000000000005f525f60045260245ffd5b6024353b5f14610403577f150b7a02000000000000000000000000000000000000000000000000000000005f5260043560045233602452602435604452608060645260205f60a45f5f6024355af15f1461050d575f517f150b7a0200000000000000000000000000000000000000000000000000000000141561050d575b600435602435805f146104e1576044356002905f5260205260405f20805433146104615760046044355f5260205260405f205433146104615780546005905f5260205260405f20335f5260205260405f2054600114610461576104b9565b819055806003905f5260205260405f208054600101905590806003905f5260205260405f20805460019003905590604435917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef5f5fa4005b7f43df7c02000000000000000000000000000000000000000000000000000000005f5260045ffd5b7f46cce841000000000000000000000000000000000000000000000000000000005f525f60045260245ffd5b7f64a0ae92000000000000000000000000000000000000000000000000000000005f5260243560045260245ffd5b6024353b5f146105bb577f150b7a02000000000000000000000000000000000000000000000000000000005f52600435600452336024526024356044526020607060703760205f60a45f5f6024355af15f146106c5575f517f150b7a020000000000000000000000000000000000000000000000000000000014156106c5575b600435602435805f14610699576044356002905f5260205260405f20805433146106195760046044355f5260205260405f205433146106195780546005905f5260205260405f20335f5260205260405f205460011461061957610671565b819055806003905f5260205260405f208054600101905590806003905f5260205260405f20805460019003905590604435917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef5f5fa4005b7f43df7c02000000000000000000000000000000000000000000000000000000005f5260045ffd5b7f46cce841000000000000000000000000000000000000000000000000000000005f525f60045260245ffd5b7f64a0ae92000000000000000000000000000000000000000000000000000000005f5260243560045260245ffd5b602435806002905f5260205260405f2054331415610671576004815f5260205260405f206004359055600435337f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9255f5fa4005b60026004355f5260205260405f20545f146107715760046004355f5260205260405f20545f5260205ff35b7f7e273289000000000000000000000000000000000000000000000000000000005f5260043560045260245ffd5b6005335f5260205260405f206004355f5260205260405f2060243590556024355f52600435337f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c3160205fa3005b60056004355f5260205260405f206024355f5260205260405f20545f5260205ff3
61084a80600a3d393df36101947f4e0c1d1d000000000000000000000000000000000000000000000000000000005f526004525f5f60245f6a636f6e736f6c652e6c6f675afa5f3560e01c80631249c58b146100ef57806306fdde03146101b657806395d89b41146101e857806301ffc9a71461021a57806370a08231146102465780636352211e1461028f57806361b8ce8c146102a557806318160ddd146102ae57806323b872dd146102b757806342842e0e146103c1578063b88d4fde14610577578063095ea7b31461072f578063081812fc14610782578063a22cb465146107db578063e985e9c514610828576101945f5260205ff35b5f548061040014610166573360015f5260205260405f2080548060021461018e576001019055806002905f5260205260405f20339055806003335f5260205260405f20805460010190556001015f55335f7fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef5f5fa4005b7f96c2a076000000000000000000000000000000000000000000000000000000005f5260045ffd5b7f3ca66168000000000000000000000000000000000000000000000000000000005f5260045ffd5b60205f5260086020527f487566662037323100000000000000000000000000000000000000000000000060405260605ff35b60205f5260046020527f485546460000000000000000000000000000000000000000000000000000000060405260605ff35b60043560e01c806380ac58cd1461023d576301ffc9a71461023d575f5f5260205ff35b60015f5260205ff35b6003600435805f14610263575f5260205260405f20545f5260205ff35b7f46cce841000000000000000000000000000000000000000000000000000000005f525f60045260245ffd5b60026004355f5260205260405f20545f5260205ff35b5f545f5260205ff35b5f545f5260205ff35b600435602435805f14610395576044356002905f5260205260405f20805433146103155760046044355f5260205260405f205433146103155780546005905f5260205260405f20335f5260205260405f20546001146103155761036d565b819055806003905f5260205260405f208054600101905590806003905f5260205260405f20805460019003905590604435917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef5f5fa4005b7f43df7c02000000000000000000000000000000000000000000000000000000005f5260045ffd5b7f46cce841000000000000000000000000000000000000000000000000000000005f525f60045260245ffd5b6024353b5f1461043f577f150b7a02000000000000000000000000000000000000000000000000000000005f5260043560045233602452602435604452608060645260205f60a45f5f6024355af15f14610549575f517f150b7a02000000000000000000000000000000000000000000000000000000001415610549575b600435602435805f1461051d576044356002905f5260205260405f208054331461049d5760046044355f5260205260405f2054331461049d5780546005905f5260205260405f20335f5260205260405f205460011461049d576104f5565b819055806003905f5260205260405f208054600101905590806003905f5260205260405f20805460019003905590604435917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef5f5fa4005b7f43df7c02000000000000000000000000000000000000000000000000000000005f5260045ffd5b7f46cce841000000000000000000000000000000000000000000000000000000005f525f60045260245ffd5b7f64a0ae92000000000000000000000000000000000000000000000000000000005f5260243560045260245ffd5b6024353b5f146105f7577f150b7a02000000000000000000000000000000000000000000000000000000005f52600435600452336024526024356044526020607060703760205f60a45f5f6024355af15f14610701575f517f150b7a02000000000000000000000000000000000000000000000000000000001415610701575b600435602435805f146106d5576044356002905f5260205260405f20805433146106555760046044355f5260205260405f205433146106555780546005905f5260205260405f20335f5260205260405f2054600114610655576106ad565b819055806003905f5260205260405f208054600101905590806003905f5260205260405f20805460019003905590604435917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef5f5fa4005b7f43df7c02000000000000000000000000000000000000000000000000000000005f5260045ffd5b7f46cce841000000000000000000000000000000000000000000000000000000005f525f60045260245ffd5b7f64a0ae92000000000000000000000000000000000000000000000000000000005f5260243560045260245ffd5b602435806002905f5260205260405f20543314156106ad576004815f5260205260405f206004359055600435337f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9255f5fa4005b60026004355f5260205260405f20545f146107ad5760046004355f5260205260405f20545f5260205ff35b7f7e273289000000000000000000000000000000000000000000000000000000005f5260043560045260245ffd5b6005335f5260205260405f206004355f5260205260405f2060243590556024355f52600435337f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c3160205fa3005b60056004355f5260205260405f206024355f5260205260405f20545f5260205ff3
2 changes: 2 additions & 0 deletions src/Huff721.huff
Original file line number Diff line number Diff line change
@@ -1,3 +1,5 @@
// #include "./lib/ConsoleLog.huff"

/* Interface */
#define function name() nonpayable returns (string memory)
#define function symbol() nonpayable returns (string memory)
Expand Down
23 changes: 23 additions & 0 deletions src/lib/ConsoleLog.huff
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
#define macro CONSOLE_LOG_INT() = takes (1) returns (0) {
// "log(int)"
0x4e0c1d1d00000000000000000000000000000000000000000000000000000000
CONSOLE_LOG_BASE()
}

#define macro CONSOLE_LOG_ADDRESS() = takes (1) returns (0) {
// "log(address)"
0x2c2ecbc200000000000000000000000000000000000000000000000000000000
CONSOLE_LOG_BASE()
}

#define macro CONSOLE_LOG_BYTES() = takes (1) returns (0) {
// "log(bytes)"
0x0be77f5600000000000000000000000000000000000000000000000000000000
CONSOLE_LOG_BASE()
}

#define macro CONSOLE_LOG_BASE() = takes (2) returns (0) {
0x0 mstore
0x04 mstore
0x0 0x0 0x24 0x0 0x000000000000000000636F6e736F6c652e6c6f67 gas staticcall
}

0 comments on commit 5a620da

Please sign in to comment.