51
51
; Finished with glad
52
52
53
53
glgarbage:
54
+ mov rdi , string_form at
55
+ mov rsi , vsrc
56
+ call printf
57
+
54
58
; VAO and VBO
55
59
mov rdi , 1
56
60
mov rsi , vao
@@ -63,12 +67,17 @@ glgarbage:
63
67
call printf
64
68
; VAO complete
65
69
70
+ mov rdi , float_form at
71
+ movq xmm0 , [ vertices + 8 * ( 5 ) ]
72
+ mov rax , 1
73
+ call printf
74
+
66
75
; attrb pointers
67
76
mov rdi , 0
68
77
mov rsi , 2
69
- mov rdx , 0x1406
78
+ mov rdx , 0x140a
70
79
mov rcx , 0
71
- mov r8 , 60
80
+ mov r8 , 40
72
81
mov r9 , 0
73
82
call [ glad_glVertexAttribPointer ]
74
83
@@ -77,10 +86,10 @@ glgarbage:
77
86
78
87
mov rdi , 1
79
88
mov rsi , 3
80
- mov rdx , 0x1406
89
+ mov rdx , 0x140a
81
90
mov rcx , 0
82
- mov r8 , 60
83
- mov r9 , 8
91
+ mov r8 , 40
92
+ mov r9 , 16 ; sizeof(double) * 2
84
93
call [ glad_glVertexAttribPointer ]
85
94
86
95
mov rdi , 1
@@ -94,7 +103,7 @@ glgarbage:
94
103
mov rsi , [ vbo ]
95
104
call [ glad_glBindBuffer ]
96
105
mov rdi , 34962
97
- mov rsi , 60
106
+ mov rsi , 120
98
107
mov rdx , vertices
99
108
mov rcx , 0x8892
100
109
call [ glad_glBufferData ]
@@ -121,8 +130,16 @@ glgarbage:
121
130
call [ glad_glShaderSource ]
122
131
mov rdi , [ fshader ]
123
132
call [ glad_glCompileShader ]
124
- ; ------------------------- Shaders DONE ---------------------------------;
125
133
134
+ mov rdi , int_form at
135
+ mov rsi , [ vshader ]
136
+ call printf
137
+
138
+ mov rdi , int_form at
139
+ mov rsi , [ fshader ]
140
+ call printf
141
+
142
+ ; ------------------------- Shaders DONE ---------------------------------;
126
143
127
144
128
145
; ------------------------- Shader program ------------------------------;
@@ -140,7 +157,10 @@ glgarbage:
140
157
call [ glad_glUseProgram ]
141
158
; ------------------------- Shader program DONE ---------------------------;
142
159
143
-
160
+ mov rdi , int_form at
161
+ mov rsi , [ program ]
162
+ call printf
163
+
144
164
loop :
145
165
movd xmm0 , [ zero ]
146
166
movd xmm1 , [ r ]
@@ -151,6 +171,12 @@ loop:
151
171
mov rdi , 16384
152
172
call [ glad_glClear ]
153
173
174
+ mov rdi , [ vao ]
175
+ call [ glad_glBindVertexArray ]
176
+
177
+ mov rdi , [ program ]
178
+ call [ glad_glUseProgram ]
179
+
154
180
mov rdi , 0x0004
155
181
mov rsi , 0
156
182
mov rdx , 3
@@ -186,33 +212,18 @@ section .rodata
186
212
int_form at : db "%d" , 10 , 0
187
213
float_form at : db "%f" , 10 , 0
188
214
pointer_form at : db "%p" , 10 , 0
215
+ string_form at : db "%s" , 10 , 0
189
216
title: db "Hello, world!" , 0
190
217
error: db "Failed to load gl functions!" , 10
191
218
len equ $ - error
192
219
r: dd 0 . 2
193
220
test : dq 0 . 2
194
221
zero: dd 0 . 0
195
- vertices:
196
- dq - 0 . 5
197
- dq - 0 . 5
198
- dq 1 . 0 ; red
199
- dq 0 . 0 ; green
200
- dq 0 . 0 ; blue
201
- dq 0 . 0
202
- dq 0 . 37
203
- dq 0 . 0 ; red
204
- dq 1 . 0 ; gree
205
- dq 0 . 0 ; blue
206
- dq 0 . 5
207
- dq - 0 . 5
208
- dq 0 . 0 ; red
209
- dq 0 . 0 ; green
210
- dq 1 . 0 ; blue
222
+ vertices: dq - 0 . 5 , - 0 . 5 , 1 . 0 , 0 . 0 , 0 . 0 , 0 . 0 , 0 . 37 , 0 . 0 , 1 . 0 , 0 . 0 , 0 . 5 , - 0 . 5 , 0 . 0 , 0 . 0 , 1 . 0
211
223
vsrc:
212
- db 0xa, 0x23, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x20, 0x33, 0x33, 0x30, 0xa, 0x6c, 0x61, 0x79, 0x6f, 0x75, 0x74, 0x28, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3d, 0x30, 0x29, 0x20, 0x69, 0x6e, 0x20, 0x76, 0x65, 0x63, 0x32, 0x20, 0x61, 0x50, 0x6f, 0x73, 0x3b, 0xa, 0x6c, 0x61, 0x79, 0x6f, 0x75, 0x74, 0x28, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3d, 0x31, 0x29, 0x20, 0x69, 0x6e, 0x20, 0x76, 0x65, 0x63, 0x33, 0x20, 0x61, 0x43, 0x6f, 0x6c, 0x3b, 0xa, 0xa, 0x6f, 0x75, 0x74, 0x20, 0x76, 0x65, 0x63, 0x33, 0x20, 0x63, 0x6f, 0x6c, 0x6f, 0x72, 0x3b, 0xa, 0xa, 0x76, 0x6f, 0x69, 0x64, 0x20, 0x6d, 0x61, 0x69, 0x6e, 0x28, 0x29, 0x20, 0x7b, 0xa, 0x20, 0x20, 0x20, 0x20, 0x67, 0x6c, 0x5f, 0x50, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x3d, 0x20, 0x76, 0x65, 0x63, 0x34, 0x28, 0x61, 0x50, 0x6f, 0x73, 0x2e, 0x78, 0x79, 0x2c, 0x20, 0x30, 0x2e, 0x30, 0x2c, 0x20, 0x31, 0x2e, 0x30, 0x29, 0x3b, 0x20, 0xa, 0x20, 0x20, 0x20, 0x20, 0x63, 0x6f, 0x6c, 0x6f, 0x72, 0x20, 0x3d, 0x20, 0x61, 0x43, 0x6f, 0x6c, 0x3b, 0xa, 0x7d, 0xa, 0
224
+ db 0xa, 0x23, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x20, 0x33, 0x33, 0x30, 0x20, 0x63, 0x6f, 0x72, 0x65, 0xa, 0x6c, 0x61, 0x79, 0x6f, 0x75, 0x74, 0x28, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3d, 0x30, 0x29, 0x20, 0x69, 0x6e, 0x20, 0x76, 0x65, 0x63, 0x32, 0x20, 0x61, 0x50, 0x6f, 0x73, 0x3b, 0xa, 0x6c, 0x61, 0x79, 0x6f, 0x75, 0x74, 0x28, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3d, 0x31, 0x29, 0x20, 0x69, 0x6e, 0x20, 0x76, 0x65, 0x63, 0x33, 0x20, 0x61, 0x43, 0x6f, 0x6c, 0x3b, 0xa, 0xa, 0x6f, 0x75, 0x74, 0x20, 0x76, 0x65, 0x63, 0x33, 0x20, 0x63, 0x6f, 0x6c, 0x6f, 0x72, 0x3b, 0xa, 0xa, 0x76, 0x6f, 0x69, 0x64, 0x20, 0x6d, 0x61, 0x69, 0x6e, 0x28, 0x29, 0x20, 0x7b, 0xa, 0x20, 0x20, 0x20, 0x20, 0x67, 0x6c, 0x5f, 0x50, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x3d, 0x20, 0x76, 0x65, 0x63, 0x34, 0x28, 0x61, 0x50, 0x6f, 0x73, 0x2e, 0x78, 0x79, 0x2c, 0x20, 0x30, 0x2e, 0x30, 0x2c, 0x20, 0x31, 0x2e, 0x30, 0x29, 0x3b, 0x20, 0xa, 0x20, 0x20, 0x20, 0x20, 0x63, 0x6f, 0x6c, 0x6f, 0x72, 0x20, 0x3d, 0x20, 0x61, 0x43, 0x6f, 0x6c, 0x3b, 0xa, 0x7d, 0xa, 0
213
225
fsrc:
214
- db 0xa , 0x23 , 0x76 , 0x65 , 0x72 , 0x73 , 0x69 , 0x6f , 0x6e , 0x20 , 0x33 , 0x33 , 0x30 , 0xa , 0x69 , 0x6e , 0x20 , 0x76 , 0x65 , 0x63 , 0x33 , 0x20 , 0x63 , 0x6f , 0x6c , 0x6f , 0x72 , 0x3b , 0xa , 0xa , 0x76 , 0x6f , 0x69 , 0x64 , 0x20 , 0x6d , 0x61 , 0x69 , 0x6e , 0x28 , 0x29 , 0x20 , 0x7b , 0xa , 0x20 , 0x20 , 0x20 , 0x20 , 0x67 , 0x6c , 0x5f , 0x46 , 0x72 , 0x61 , 0x67 , 0x43 , 0x6f , 0x6c , 0x6f , 0x72 , 0x20 , 0x3d , 0x20 , 0x76 , 0x65 , 0x63 , 0x34 , 0x28 , 0x63 , 0x6f , 0x6c , 0x6f , 0x72 , 0x2e , 0x78 , 0x79 , 0x7a , 0x2c , 0x20 , 0x31 , 0x2e , 0x30 , 0x29 , 0x3b , 0xa , 0x7d , 0xa , 0
215
-
226
+ db 0xa , 0x23 , 0x76 , 0x65 , 0x72 , 0x73 , 0x69 , 0x6f , 0x6e , 0x20 , 0x33 , 0x33 , 0x30 , 0x20 , 0x63 , 0x6f , 0x72 , 0x65 , 0xa , 0x69 , 0x6e , 0x20 , 0x76 , 0x65 , 0x63 , 0x33 , 0x20 , 0x63 , 0x6f , 0x6c , 0x6f , 0x72 , 0x3b , 0xa , 0xa , 0x76 , 0x6f , 0x69 , 0x64 , 0x20 , 0x6d , 0x61 , 0x69 , 0x6e , 0x28 , 0x29 , 0x20 , 0x7b , 0xa , 0x20 , 0x20 , 0x20 , 0x20 , 0x67 , 0x6c , 0x5f , 0x46 , 0x72 , 0x61 , 0x67 , 0x43 , 0x6f , 0x6c , 0x6f , 0x72 , 0x20 , 0x3d , 0x20 , 0x76 , 0x65 , 0x63 , 0x34 , 0x28 , 0x63 , 0x6f , 0x6c , 0x6f , 0x72 , 0x2e , 0x78 , 0x79 , 0x7a , 0x2c , 0x20 , 0x31 , 0x2e , 0x30 , 0x29 , 0x3b , 0xa , 0x7d , 0xa , 0
216
227
pvsrc:
217
228
dq vsrc
218
229
pfsrc:
0 commit comments